OSSP CVS Repository

ossp - Check-in [1077]
Not logged in
[Honeypot]  [Browse]  [Home]  [Login]  [Reports
[Search]  [Ticket]  [Timeline
  [Patchset]  [Tagging/Branching

Check-in Number: 1077
Date: 2001-Oct-05 13:55:51 (local)
2001-Oct-05 11:55:51 (UTC)
User:rse
Branch:
Comment: remember one more thing
Tickets:
Inspections:
Files:
ossp-pkg/sa/TODO      1.3 -> 1.4     0 inserted, 7 deleted
ossp-pkg/sa/sa.pod      1.4 -> 1.5     11 inserted, 0 deleted

ossp-pkg/sa/TODO 1.3 -> 1.4

--- 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


ossp-pkg/sa/sa.pod 1.4 -> 1.5

--- 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}://<host>[:<port>]>) to the C<sa_addr_t> and
 vice versa.
 
+=item B<Type Abstraction>
+
+Some other subtle details in the socket API make the life hard in
+practice: C<socklen_t> and C<ssize_t>. 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<OSSP sa> hides all this in its API.
+
 =item B<I/O Timeouts>
 
 Each function of B<OSSP sa> is aware of a central timeout (set by

CVSTrac 2.0.1