{section: What should be changed?} All the deprecated BSD socket functions. These are complete list. {code} struct sockaddr_in gethostbyname gethostbyname2 getservbyname gethostbyaddr getservbyport inet_addr inet_aton inet_nsap_addr inet_ntoa inet_nsap_ntoa inet_makeaddr inet_netof inet_network inet_neta inet_net_netop inet_net_pton rcmd rexec rrsevport {endcode} IP address is no longer fixed 4 bytes nor fixed 16 bytes. It can be both of them. So, every storage class should be changed. For some of source codes that use 'int' as storage for IP address, this is most troublesome because it could be hidden to text search. {section: Current Condor Code Base} sockaddr_in is used in many areas and also unsigned long is used to hold IP address. {linebreak} {linebreak} There are many places to change. For example, in sock.h,{linebreak} {code} unsigned int Sock::get_ip_int() unsigned int Sock::peer_ip_int() {endcode} It uses 'unsigned int' to pass IP address. {section: The method of Attack} Having some network abstraction classes, single IP address class that deals both IPv4 and IPv6. So, nobody uses sockaddr*, sockaddr_in, or just int to represent IP address. {linebreak} {linebreak} class Sock already has abstraction of BSD socket interface. But, IP address escapes from this classes by returning it as an 4 byte int and sockaddr_in. {section: Todo} Manageable daily work-list. 1. investigate every source code where calls obsolete BSD socket interface. 2. remove every obsolete interface. 3. investigate ipv6 address handling in C++ Boost library 4. make unified address class (is it really required? since ipv6 can contain ipv4 addr) *** currently, this is just temporary page {linebreak} why do you call as sinful string? what does it mean 'sinful'?