Trouble with socket server class using stdc...
BlitzMax Forums/BlitzMax Programming/Trouble with socket server class using stdc...
| ||
I am creating a TCP server class using the standard C library functions in BlitzMax (stdc.bmx). I seem to be having trouble creating a socket. The socket_ function for creating the listener socket seems to not be working. Here is the code:Import BRL.Stream Local server:JServer = New JServer Local socket_list:TList = New TList Local servercode server.CreateServer(7777) Local TempSocket Local listencounter:Int = 0 If servercode = 0 Then Print "There has been an error creating the listener socket" While Not KeyDown(KEY_ESCAPE) listencounter = listencounter + 1 TempSocket = server.listen() If TempSocket > 0 Print "Got Connection" server.WriteSocket( TempSocket, "I like to eat Bagels!", 100) 'server.close( TempSocket ) endif wend Type JServer Field socket_connections:TList = New TList Field greeter_socket Method CreateServer(port:Short) greeter_socket = socket_( AF_INET_, SOCK_STREAM_, 0 ) If greeter_socket < 0 Return bind_(greeter_socket, AF_INET_, port) listen_(greeter_socket, 5) Return true End Method Method Listen() Local address Local length Local temp_socket = accept_( greeter_socket, Varptr(address), length ) Return temp_socket End method Method ReadSocket( in_socket, buf:Byte Ptr, count ) Local n = recv_( in_socket, buf, count, 0 ) If n > 0 Return n End Method Method WriteSocket( in_socket, buf:Byte Ptr, count ) Local n = send_( in_socket, buf, count, 0 ) If n > 0 Return n If n=0 _eof=1 Else _eof=-1 Return 0 End Method Method Close( in_socket ) If in_socket closesocket_( in_socket ) in_socket = 0 End Method End Type Anyone familiar enough the the C socket libraries to provide any help? Thanks! RexRhino |