sipd - Added SSL/TLS to sipd, a SIP (Internet telephony) redirect, proxy and registration server.
sipd [-s configfile] [-p port] [-v] [-X]
Binary and source "alpha" distribution are available. The code has been tested on Solaris 5.8.
Please refer to sipd's official page and the report on the project of adding SSL/TLS to spid for more information.
- Enables SSL/TLS secure communication between sipd server and its clients.
- This secure communication is optional, easy to turn on/off by specifying in the configuration file.
- -s configfile
- specify where is the configuration file, which is an Apache-like text file that defines the server's behabviour.
- -v
- Makes the server print out debugging information to stdout.
For SSL/TSL, a file contains the server's public key in pem format is needed. Other files needed are dh1024.pem and random.pem, which specifies the scheme of generating random number for each session.
siptc
,
Li Liao, at Columbia University, Department of Computer Science
ssl_tcp.c
contains code that implements tasks of creating a SSL/TLS
socket, receiving a request, and passing the request to downstream functions for processing.
ssl_common.c
contains code for: common tasks required for
setting up an SSL/TLS communication.
request_common.h
contains the data structure
request_copmmon_t for a request.
The revised version has substitute struct sockaddr_in for
a union sock_t to hold SSL as well.
In addition to SOCK_STREAM and SOCK_DGRAM,
SOCK_SSL is defined to address a third sock type.
sipd-config.c
contains code for setting configuration for sipd
server either as default or according to a configuration file. The revised version has
a new parameter SSLPort, which, if not equal to zero, will turn on SSL/TLS
socket to listen on this port.
sipd.c
contains code for main() where sipd starts.
The revised version will detect if SSLPort is chosen and pass port number to ssl_tcp.c.
Code for many functions are revised to accomodate this addition of SSL/TLS. These files include: libsip/authenticate.c, libsip/client.c,libsip/config.h, libsip/message.c, libsip/message.c,libsip/request-sip.h, libsip/sip.h, libsip/request.c, libsip/response.c; libcine/tcp.c, libcine/udp.c, libcine/request-common.h, libcine/http.c, libcine/md5-util.c, libcine/md5.h, libcine/sysdep.h; sipd/callback.c, sipd/cgi.c, sipd/presence.c, sipd/log.c.
Last updated by Li Liao