|
From: Alex M. S. <arc...@us...> - 2004-04-13 20:44:59
|
Update of /cvsroot/nettle/nettle/c In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26817/c Modified Files: socket nettle Log Message: Allows us to use named ports for ports in host:port strings, so we can do pop.freeserve.net:pop3 rather than having to know it's 110 and stuff Index: socket =================================================================== RCS file: /cvsroot/nettle/nettle/c/socket,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -d -r1.38 -r1.39 *** socket 2 Apr 2004 06:31:59 -0000 1.38 --- socket 13 Apr 2004 20:30:56 -0000 1.39 *************** *** 1,5 **** /** * Socket code ! * (C) Nettle developers 2000-2001 * * $Id$ --- 1,5 ---- /** * Socket code ! * (C) Nettle developers 2000-2004 * * $Id$ *************** *** 175,178 **** --- 175,191 ---- } + int socket_port_number_from_name(const char *port_name) + { + struct servent *port_lookup = NULL; + + port_lookup = getservbyname(port_name, "tcp"); + if (port_lookup != NULL) + { + return ntohs(port_lookup->s_port); + } + + return 0; + } + const char *socket_strerror(int errnum) { Index: nettle =================================================================== RCS file: /cvsroot/nettle/nettle/c/nettle,v retrieving revision 1.121 retrieving revision 1.122 diff -C2 -d -r1.121 -r1.122 *** nettle 3 Apr 2004 10:18:51 -0000 1.121 --- nettle 13 Apr 2004 20:30:56 -0000 1.122 *************** *** 159,162 **** --- 159,167 ---- *sptr = '\0'; *port = atoi (sptr + 1); + + if (*port == 0) + { + *port = socket_port_number_from_name(sptr + 1); + } } else |