Mercurial > cabal
view sources/headers/network.h @ 0:bafff9de2a76
Initial commit since summer'07
| author | Vlad Glagolev <enqlave@gmail.com> |
|---|---|
| date | Sun, 20 Jan 2008 19:25:25 +0300 |
| parents | |
| children |
line wrap: on
line source
/** * network.h (2007-04-02) * * -- CABAL -- network header * * Copyright (c) 2007 Vlad Glagolev <enqlave@gmail.com> * All rights reserved. * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above * copyright notice and this permission notice appear in all copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ #ifndef _NETWORK_H_ #define _NETWORK_H_ #include "core.h" class Network { public: Network(); ~Network(); void msgSend(string); string msgReceive(); int cs; struct address_type { int inet; struct sockaddr_in sa; #ifdef ENABLE_IPV6 struct sockaddr_in6 sa6; #endif } address; bool socketClose(); bool hostResolve(pchar, address_type *, int inet = 0); bool tcpActivate(int, pchar host = 0); bool hostOpen(); int canRead(int); int canWrite(int); fd_set rs, ws; timeval timeout; bool connecting, connected; }; #endif // _NETWORK_H_
