summaryrefslogtreecommitdiff
path: root/i/simulotron/src/socket/socket_client.cc
diff options
context:
space:
mode:
authorhaller2005-12-18 19:05:24 +0000
committerhaller2005-12-18 19:05:24 +0000
commitf6ff855101ae3d98fff31c33726e852f2d505ffe (patch)
tree843a07a1976f6b8bbdc8426b513bed8bbaf47d4c /i/simulotron/src/socket/socket_client.cc
parent97eb9088f51c5547c8ab864a62faedd55689b355 (diff)
* Rajout de quelques fonctions dans socket_* pour essayer de faire abstraction
de la classe Address pour les clients de la "couche" socket * Rajout de const dans la fonction getFd de socket_server * Modification de test_socket pour prendre en compte les modif (+ nettoyage)
Diffstat (limited to 'i/simulotron/src/socket/socket_client.cc')
-rw-r--r--i/simulotron/src/socket/socket_client.cc11
1 files changed, 7 insertions, 4 deletions
diff --git a/i/simulotron/src/socket/socket_client.cc b/i/simulotron/src/socket/socket_client.cc
index b8bdbc3..6e18c2e 100644
--- a/i/simulotron/src/socket/socket_client.cc
+++ b/i/simulotron/src/socket/socket_client.cc
@@ -30,15 +30,12 @@
#include <sys/socket.h>
#include <cerrno>
-SocketClient::SocketClient (const Address & address)
+SocketClient::SocketClient (void)
{
// Crée le file descriptor du socket
socket_ = socket (PF_INET, SOCK_STREAM, 0);
if (socket_ < 0)
throw errno_exception ("La chaussette n'a pas pu être tricoté", errno);
- // On bind le socket
- if (::bind (socket_, address.getSockaddr (), sizeof (*address.getSockaddr ())) < 0)
- throw errno_exception ("Impossible d'assigner la chausette", errno);
}
SocketClient::SocketClient (SocketServer & socketServer)
@@ -61,6 +58,12 @@ SocketClient::connect (const Address & address)
throw errno_exception ("Impossible de mettre la chaussette", errno);
}
+void
+SocketClient::connect (const std::string & address, int port)
+{
+ connect (Address(address, port));
+}
+
std::string
SocketClient::read (void)
{