digitalmars.D.learn - Connection to server socket "Invalid argument"
- VlasovRoman (63/63) Jul 22 2015 I have some code.
I have some code. //client.d import std.stdio; import std.socket; import std.conv; void main() { Socket client = new TcpSocket(AddressFamily.INET); auto addr = new InternetAddress("localhost", 2021); auto addrServer = new InternetAddress("localhost", 2017); client.bind(addr); client.blocking(true); writeln("Connection..."); client.connect(addrServer); void[] buffer = new void[245]; while(1) { ulong size = client.receive(buffer); if(size > 0) { writeln(cast(string)buffer); } } scope(exit) { client.shutdown(SocketShutdown.BOTH); client.close(); } } //server.d import std.stdio; import std.socket; import std.process; import std.conv; void main(string[] args) { Socket client; Socket server = new TcpSocket(AddressFamily.INET); auto addr = new InternetAddress(args[1], to!(ushort)(args[2])); server.bind(addr); server.listen(1); server.blocking(true); while(1){ try { client = server.accept(); writeln("New Connection"); } catch{} writeln("Running sensors...") auto sensors = executeShell("sensors"); //writeln(sensors.output); //wait(sensors); writeln("Sending data..") client.send(cast(void[])(sensors.output)); } scope(exit) { server.shutdown(SocketShutdown.BOTH); server.close(); } } When i use "localhost" address how address of server for client socket, i getting working connection, but when i use address like 192.168.106.91, i get error: std.socket.SocketOSException std/socket.d(2768): Unable to connect socket: Invalid argument How i can to solve my problem?
Jul 22 2015