Index: ossp-pkg/sa/TODO RCS File: /v/ossp/cvs/ossp-pkg/sa/TODO,v rcsdiff -q -kk '-r1.3' '-r1.4' -u '/v/ossp/cvs/ossp-pkg/sa/TODO,v' 2>/dev/null --- TODO 2001/10/05 11:40:22 1.3 +++ TODO 2001/10/05 11:55:51 1.4 @@ -1,11 +1,4 @@ -Goals: -1. struct sockaddr * abstraction -2. ssize_t abstraction -3. cache socket descriptors weil kein close existiert -4. jede funktion hat timeout-possibility (connect_smart!) -5. optional readline and buffering functionality - TODO: buffer == 0 -> fully unbuffered timeout == 0 -> fully blocking Index: ossp-pkg/sa/sa.pod RCS File: /v/ossp/cvs/ossp-pkg/sa/sa.pod,v rcsdiff -q -kk '-r1.4' '-r1.5' -u '/v/ossp/cvs/ossp-pkg/sa/sa.pod,v' 2>/dev/null --- sa.pod 2001/10/05 11:49:10 1.4 +++ sa.pod 2001/10/05 11:55:51 1.5 @@ -107,6 +107,17 @@ specification (C<{tcp,udp}://[:]>) to the C and vice versa. +=item B + +Some other subtle details in the socket API make the life hard in +practice: C and C. These two types originally were +(and on some platforms still are) plain integers or unsigned integers +while POSIX later introduced own types for them. This is nasty, because +for full backward compatibility and type-correct API usage, every +application has to check whether the newer types exists and if not +provide own definitions which map to the still actually used integer +type on the underlying platform. B hides all this in its API. + =item B Each function of B is aware of a central timeout (set by