Mercurial > cabal
annotate sources/headers/network.hpp @ 7:8d54d9fdeca3
fixed comments
removed daemonization verbose
strings' size() -> length()
| author | Vlad Glagolev <enqlave@gmail.com> |
|---|---|
| date | Sun, 03 Feb 2008 21:29:41 +0300 |
| parents | 9be05a31b7f9 |
| children |
| rev | line source |
|---|---|
| 7 | 1 /** network.hpp (2007-04-02) |
| 2 | 2 * |
| 3 * -- CABAL -- network header | |
| 4 * | |
| 5 * Copyright (c) 2007-2008 Vlad Glagolev <enqlave@gmail.com> | |
| 6 * All rights reserved. | |
| 7 * | |
| 8 * Permission to use, copy, modify, and distribute this software for any | |
| 9 * purpose with or without fee is hereby granted, provided that the above | |
| 10 * copyright notice and this permission notice appear in all copies. | |
| 11 * | |
| 12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |
| 13 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |
| 14 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |
| 15 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
| 16 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |
| 17 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |
| 18 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
| 19 */ | |
| 20 | |
| 21 #ifndef _NETWORK_HPP_ | |
| 22 #define _NETWORK_HPP_ | |
| 23 | |
| 24 #include "core.hpp" | |
| 25 | |
| 5 | 26 class Network |
| 27 { | |
| 2 | 28 public: |
| 29 Network(); | |
| 30 ~Network(); | |
| 31 | |
| 32 void sendMsg(string); | |
| 33 string receiveMsg(); | |
| 34 | |
| 35 int cs; | |
| 36 | |
| 37 struct address_type { | |
| 38 int inet; | |
| 39 struct sockaddr_in sa; | |
| 40 #ifdef ENABLE_IPV6 | |
| 41 struct sockaddr_in6 sa6; | |
| 42 #endif | |
| 43 } address; | |
| 44 | |
|
4
a7051ac7118b
added primary parser implementation
Vlad Glagolev <enqlave@gmail.com>
parents:
2
diff
changeset
|
45 bool closeSocket(); |
| 2 | 46 |
|
4
a7051ac7118b
added primary parser implementation
Vlad Glagolev <enqlave@gmail.com>
parents:
2
diff
changeset
|
47 bool openHost(); |
|
a7051ac7118b
added primary parser implementation
Vlad Glagolev <enqlave@gmail.com>
parents:
2
diff
changeset
|
48 bool resolveHost(pchar, address_type *, int inet = 0); |
|
6
9be05a31b7f9
Enqlave IRC Network => Vaygr IRC Network
Vlad Glagolev <enqlave@gmail.com>
parents:
5
diff
changeset
|
49 bool activateTCP(int, pchar host = NULL); |
| 2 | 50 |
| 51 int canRead(int); | |
| 52 int canWrite(int); | |
| 53 | |
| 54 fd_set rs, ws; | |
| 55 timeval timeout; | |
| 56 | |
| 57 bool connecting, connected; | |
| 58 }; | |
| 59 | |
| 60 #endif // _NETWORK_HPP_ |
