vw compatible domainSymbols (afXXX)
authorClaus Gittinger <cg@exept.de>
Wed, 21 May 2003 19:03:42 +0200
changeset 1226 0114bd044aa9
parent 1225 8839f52dde96
child 1227 863bea3be6d1
vw compatible domainSymbols (afXXX)
AppletalkSocketAddress.st
IPSocketAddress.st
IPv6SocketAddress.st
SocketAddress.st
UDSocketAddress.st
--- a/AppletalkSocketAddress.st	Wed May 21 15:45:45 2003 +0200
+++ b/AppletalkSocketAddress.st	Wed May 21 19:03:42 2003 +0200
@@ -107,6 +107,10 @@
 
 domainSymbol
 
+    ^ #'AF_APPLETALK'
+!
+
+obsoleteDomainSymbol
     ^ #appletalk
 !
 
@@ -193,5 +197,5 @@
 !AppletalkSocketAddress class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic2/AppletalkSocketAddress.st,v 1.5 2003-03-27 15:14:02 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic2/AppletalkSocketAddress.st,v 1.6 2003-05-21 17:03:18 cg Exp $'
 ! !
--- a/IPSocketAddress.st	Wed May 21 15:45:45 2003 +0200
+++ b/IPSocketAddress.st	Wed May 21 19:03:42 2003 +0200
@@ -111,7 +111,7 @@
 !
 
 thisHost
-    "return IN_ADDR_ANY, the address matching any local address"
+    "return the bytes of IN_ADDR_ANY, the address matching any local address"
 
     ^ #[0 0 0 0]
 ! !
@@ -120,6 +120,10 @@
 
 domainSymbol
 
+    ^ #'AF_INET'
+!
+
+obsoleteDomainSymbol
     ^ #inet
 !
 
@@ -127,6 +131,10 @@
     "This is OS dependent"
     
     ^ OperatingSystem socketAccessor socketAddressSize:#inet
+!
+
+vwDomainSymbol
+    ^ #afInet
 ! !
 
 !IPSocketAddress methodsFor:'accessing'!
@@ -181,5 +189,5 @@
 !IPSocketAddress class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic2/IPSocketAddress.st,v 1.15 2003-03-27 13:29:29 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic2/IPSocketAddress.st,v 1.16 2003-05-21 17:03:26 cg Exp $'
 ! !
--- a/IPv6SocketAddress.st	Wed May 21 15:45:45 2003 +0200
+++ b/IPv6SocketAddress.st	Wed May 21 19:03:42 2003 +0200
@@ -66,6 +66,10 @@
 
 domainSymbol
 
+    ^ #'AF_INET6'
+!
+
+obsoleteDomainSymbol
     ^ #inet6
 !
 
@@ -82,5 +86,5 @@
 !IPv6SocketAddress class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic2/IPv6SocketAddress.st,v 1.5 2003-03-27 15:14:02 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic2/IPv6SocketAddress.st,v 1.6 2003-05-21 17:03:35 cg Exp $'
 ! !
--- a/SocketAddress.st	Wed May 21 15:45:45 2003 +0200
+++ b/SocketAddress.st	Wed May 21 19:03:42 2003 +0200
@@ -87,9 +87,13 @@
         port := portNrOrName.
     ].
 
-    addressInfo := self getAddressInfo:name serviceName:serviceName 
-                 domain:self domainSymbol type:socketTypeSymbol
-                 protocol:nil flags:0.
+    addressInfo := self 
+                    getAddressInfo:name 
+                    serviceName:serviceName 
+                    domain:(self domainSymbol) 
+                    type:socketTypeSymbol
+                    protocol:nil 
+                    flags:0.
 
     sa := addressInfo first socketAddress.
     addressInfo size > 1 ifTrue:[
@@ -263,32 +267,51 @@
      VW expects the internal unix codes here - however, in ST/X,
      symbols are expected - keeping the numeric values secret (in Socket)"
 
-    code isInteger ifTrue:[
+    code notNil ifTrue:[
         self allSubclassesDo:[:cls|
             cls domainCode == code ifTrue:[
                 ^ cls
             ].
-        ].
-    ] ifFalse:[
-        self allSubclassesDo:[:cls|
             cls domainSymbol == code ifTrue:[
                 ^ cls
             ].
+            cls obsoleteDomainSymbol == code ifTrue:[
+                ^ cls
+            ].
+            cls vwDomainSymbol == code ifTrue:[
+                ^ cls
+            ].
         ].
     ].
     ^ SocketAddress
 
     "
-     self knownClassFromCode:#unix
+     self knownClassFromCode:#'AF_UNIX'
+     self knownClassFromCode:#'AF_INET'
+
+     self knownClassFromCode:1
+     self knownClassFromCode:2
+
+     self knownClassFromCode:#unix             obsolete ST/X codes
      self knownClassFromCode:#inet
-     self knownClassFromCode:2
+
+     self knownClassFromCode:#afUnix           visualWorks codes
+     self knownClassFromCode:#afInet
     "
 !
 
+obsoleteDomainSymbol
+    ^ nil
+!
+
 socketAddressSize
     "answer the OS specific size of a socket address"
 
     ^ self subclassResponsibility
+!
+
+vwDomainSymbol
+    ^ nil
 ! !
 
 !SocketAddress methodsFor:'accessing'!
@@ -388,5 +411,5 @@
 !SocketAddress class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic2/SocketAddress.st,v 1.13 2003-05-21 13:45:45 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic2/SocketAddress.st,v 1.14 2003-05-21 17:03:42 cg Exp $'
 ! !
--- a/UDSocketAddress.st	Wed May 21 15:45:45 2003 +0200
+++ b/UDSocketAddress.st	Wed May 21 19:03:42 2003 +0200
@@ -76,11 +76,19 @@
 
 domainSymbol
 
+    ^ #'AF_UNIX'
+!
+
+obsoleteDomainSymbol
     ^ #unix
 !
 
 socketAddressSize
     ^ OperatingSystem socketAccessor socketAddressSize:#unix
+!
+
+vwDomainSymbol
+    ^ #afUnix
 ! !
 
 !UDSocketAddress methodsFor:'accessing'!
@@ -136,5 +144,5 @@
 !UDSocketAddress class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic2/UDSocketAddress.st,v 1.8 2003-03-27 13:29:59 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic2/UDSocketAddress.st,v 1.9 2003-05-21 17:03:09 cg Exp $'
 ! !