Mark Sibly 8 years ago
parent
commit
02e4eb2ca3
2 changed files with 15 additions and 9 deletions
  1. 2 2
      modules/std/socket/native/socket.cpp
  2. 13 7
      modules/std/socket/socket.monkey2

+ 2 - 2
modules/std/socket/native/socket.cpp

@@ -94,7 +94,7 @@ namespace bbSocket{
 
 
 		hints.ai_family=AF_UNSPEC;
 		hints.ai_family=AF_UNSPEC;
 		hints.ai_socktype=(type==1) ? SOCK_DGRAM : SOCK_STREAM;
 		hints.ai_socktype=(type==1) ? SOCK_DGRAM : SOCK_STREAM;
-		hints.ai_flags=((flags&1) ? AI_PASSIVE : 0) | ((flags&2) ? AI_NUMERICHOST : 0);
+//		hints.ai_flags=(flags&1) ? AI_PASSIVE : 0;
 		if( hostname && !hostname[0] ) hostname=0;
 		if( hostname && !hostname[0] ) hostname=0;
 
 
 		addrinfo *pres=0;
 		addrinfo *pres=0;
@@ -128,7 +128,7 @@ namespace bbSocket{
 		
 		
 		hints.ai_family=AF_UNSPEC;
 		hints.ai_family=AF_UNSPEC;
 		hints.ai_socktype=(type==1) ? SOCK_DGRAM : SOCK_STREAM;
 		hints.ai_socktype=(type==1) ? SOCK_DGRAM : SOCK_STREAM;
-		hints.ai_flags=((flags&1) ? AI_PASSIVE : 0) | ((flags&2) ? AI_NUMERICHOST : 0);
+		hints.ai_flags=(flags&1) ? AI_PASSIVE : 0;
 		if( hostname && !hostname[0] ) hostname=0;
 		if( hostname && !hostname[0] ) hostname=0;
 		
 		
 		addrinfo *pres=0;
 		addrinfo *pres=0;

+ 13 - 7
modules/std/socket/socket.monkey2

@@ -98,12 +98,10 @@ End
 | SocketFlags	| Description
 | SocketFlags	| Description
 |:--------------|:-----------
 |:--------------|:-----------
 | `Passive`		| for Bind and Listen only. Indicates socket accepts connections from any address. If not set, socket accepts loopback connections only.
 | `Passive`		| for Bind and Listen only. Indicates socket accepts connections from any address. If not set, socket accepts loopback connections only.
-| `NumericHost`	| Socket name does not need to be looked up. Faster.
 
 
 #end
 #end
 Enum SocketFlags
 Enum SocketFlags
 	Passive=1
 	Passive=1
-	NumericHost=2
 End
 End
 
 
 #rem monkeydoc The SocketAddress class.
 #rem monkeydoc The SocketAddress class.
@@ -425,21 +423,25 @@ Class Socket Extends std.resource.Resource
 
 
 	#rem monkeydoc Creates a datagram server socket.
 	#rem monkeydoc Creates a datagram server socket.
 	
 	
-	Returns a new datagram server socket listening at 'service' if successful.
+	Returns a new datagram server socket bound to 'service' if successful.
+	
+	`service` can also be an integer port number.
 	
 	
 	Returns null upon failure.
 	Returns null upon failure.
 
 
 	@return A new socket.
 	@return A new socket.
 	
 	
 	#end
 	#end
-	Function Bind:Socket( service:String,loopback:bool=False )
+	Function Bind:Socket( service:String,flags:SocketFlags=SocketFlags.Passive )
 
 
-		Local socket:=socket_bind( "",service,loopback ? 0 Else 1 )
+		Local socket:=socket_bind( "",service,flags )
 		If socket=-1 Return Null
 		If socket=-1 Return Null
 		
 		
 		Return New Socket( socket )
 		Return New Socket( socket )
 	End
 	End
 	
 	
+	#rem monkey @deprecated
+	#end
 	Function Bind:Socket( hostname:String,service:String )
 	Function Bind:Socket( hostname:String,service:String )
 		
 		
 		Local socket:=socket_bind( "",service,1 )
 		Local socket:=socket_bind( "",service,1 )
@@ -453,19 +455,23 @@ Class Socket Extends std.resource.Resource
 	
 	
 	Returns a new stream server socket listening at `service` if successful.
 	Returns a new stream server socket listening at `service` if successful.
 	
 	
+	`service` can also be an integer port number.
+	
 	Returns null upon failure.
 	Returns null upon failure.
 
 
 	@return A new socket.
 	@return A new socket.
 	
 	
 	#end
 	#end
-	Function Listen:Socket( service:String,backlog:Int=32,loopback:bool=False )
+	Function Listen:Socket( service:String,backlog:Int=32,flags:SocketFlags=SocketFlags.Passive )
 
 
-		Local socket:=socket_listen( "",service,backlog,loopback ? 0 Else 1 )
+		Local socket:=socket_listen( "",service,backlog,flags )
 		If socket=-1 Return Null
 		If socket=-1 Return Null
 		
 		
 		Return New Socket( socket )
 		Return New Socket( socket )
 	End
 	End
 
 
+	#rem monkey @deprecated
+	#end
 	Function Listen:Socket( hostname:String,service:String,backlog:Int=128 )
 	Function Listen:Socket( hostname:String,service:String,backlog:Int=128 )
 		
 		
 		Local socket:=socket_listen( "",service,backlog,1 )
 		Local socket:=socket_listen( "",service,backlog,1 )