catalinux / Conn (public) (License: LGPLv2) (since 2016-03-01) (hash sha1)
Net library for easy building ipv4/ipv6 network daemons/clients
List of commits:
Subject Hash Author Date (UTC)
Cosmetic changes. 7099dd49a270b9f4ecc0cb2e55254bef671202e5 Catalin(ux) M. BOIE 2009-08-25 17:54:15
Improved status output. 1ff597059bbb208b56ad18bf8324fae5b63950a2 Catalin(ux) M. BOIE 2009-08-25 17:53:44
Conn_type_* becomes CONN_TYPE_*. b284a20cc5430042cc662edc4d121c7f18cb3569 Catalin(ux) M. BOIE 2009-08-25 17:52:51
Improved status logging. 54fea00d8f16127244fd15b209c24f606adb20b3 Catalin(ux) M. BOIE 2009-08-25 17:33:14
Added Conn_strcasestr for case insensitive search in buffer. ca14b37b2a1f23887ad12fed729a3dd0ff253443 Catalin(ux) M. BOIE 2009-08-24 17:18:24
Improved ntime example. b63de9b82ffab1c0d759571a40f1d72f9b8df927 Catalin(ux) M. BOIE 2009-08-24 17:09:21
Removed unused includes. 8af81a4c311caa7d738000a5208d01d7620d1040 Catalin(ux) M. BOIE 2009-08-21 18:57:33
Improved blackhole example. 2fd7ff181a412f4ba060b0e89b97acdf89a8fb88 Catalin(ux) M. BOIE 2009-08-21 18:03:22
Fixed connections to outside. Still, it is a little mess there. 417ccd4a48508a810377676658d51c5103168472 Catalin(ux) M. BOIE 2009-08-21 17:42:37
addr and bind_addr are not pointers! Corrected them. e1deeb765500ee079802c2cd6543f9c9496d8f9b Catalin(ux) M. BOIE 2009-08-21 16:49:24
Exported _alloc and _commit functions. 9a3159e89eff020cfb75b9eec49a45a637a6da57 Catalin(ux) M. BOIE 2009-08-21 16:39:27
Added blackhole example. 8a7ac49b018ad65ba386f8a50725745127b4cbd2 Catalin(ux) M. BOIE 2009-08-21 15:54:55
TODO in/out. fdcfbf9e18ed5fbe0135b9aa702e09432fa71e93 Catalin(ux) M. BOIE 2009-08-21 15:53:05
First chunk of generic socket handling. b9a488ba615c4322b5d116a29919f11fd476b200 Catalin(ux) M. BOIE 2009-08-21 15:50:45
Added ntime example (returns CLOCK_REALTIME as fast as it can). e2fa318caf3e9aea09a853ab2b4af4b5a2cc8261 Catalin(ux) M. BOIE 2009-08-20 15:41:20
TODO ins and outs. 66a987be5d8e08ef6fe1ce0c056b8c3acd65bdb7 Catalin(ux) M. BOIE 2009-08-20 15:36:14
Cosmetic change. 5dab6539af2ca97f3f3f9b55e20be7d6f423829e Catalin(ux) M. BOIE 2009-08-20 15:34:01
Abort if current slot is in state FREE. It must not happen. 14dc9f444309cddd46996a47277cefe4eec77db5 Catalin(ux) M. BOIE 2009-08-20 15:33:31
Clean a slot only after we move it in the end. This fixes an infinite loop if last and first slots were both in state FREE. eecc6decaea6801235aa7a02d193782e1accc58f Catalin(ux) M. BOIE 2009-08-20 15:32:38
Cosmetic changes. c147533732f8b7b4bbe2725f04bcce0df0271c70 Catalin(ux) M. BOIE 2009-08-20 15:31:12
Commit 7099dd49a270b9f4ecc0cb2e55254bef671202e5 - Cosmetic changes.
Signed-off-by: Catalin(ux) M. BOIE <catab@embedromix.ro>
Author: Catalin(ux) M. BOIE
Author date (UTC): 2009-08-25 17:54
Committer name: Catalin(ux) M. BOIE
Committer date (UTC): 2009-09-02 15:42
Parent(s): 1ff597059bbb208b56ad18bf8324fae5b63950a2
Signing key:
Tree: 79098cf4750d58fd1ef42106c136c0b93f3297bc
File Lines added Lines deleted
examples/blackhole_c.c 11 11
File examples/blackhole_c.c changed (mode: 100644) (index 873f147..ac203e2)
7 7 #include <Conn.h> #include <Conn.h>
8 8
9 9 /* Global variables */ /* Global variables */
10 static unsigned short debug = 4;
11 static unsigned int ipv4conns = 1000, ipv6conns = 1000;
10 static unsigned short debug = 4;
11 static unsigned int ipv4conns = 500, ipv6conns = 500;
12 12
13 static int port = 9000;
14 static unsigned int ends = 0;
15 static unsigned char *buf;
16 static int buf_size;
17 static unsigned int errors = 0;
18 static unsigned long long bytes = 0;
13 static int port = 9000;
14 static unsigned int ends = 0;
15 static unsigned char *buf;
16 static int buf_size;
17 static unsigned long long errors = 0;
18 static unsigned long long bytes = 0;
19 19
20 20
21 21 static void c_connected(struct Conn *C) static void c_connected(struct Conn *C)
 
... ... int main(void)
95 95 if (ret != 0) { if (ret != 0) {
96 96 printf("Error commiting [%s]!\n", printf("Error commiting [%s]!\n",
97 97 Conn_strerror()); Conn_strerror());
98 errors++;
98 errors++;
99 99 } }
100 100 } }
101 101 } }
 
... ... int main(void)
116 116 if (ret != 0) { if (ret != 0) {
117 117 printf("Error commiting [%s]!\n", printf("Error commiting [%s]!\n",
118 118 Conn_strerror()); Conn_strerror());
119 errors++;
119 errors++;
120 120 } }
121 121 } }
122 122 } }
 
... ... int main(void)
137 137
138 138 elap = 1000000 * (end.tv_sec - start.tv_sec) + end.tv_usec - start.tv_usec; elap = 1000000 * (end.tv_sec - start.tv_sec) + end.tv_usec - start.tv_usec;
139 139 printf("Finish in %d.%06d. ipv4conns=%d. ipv6conns=%d. Total=%d. ends=%d" printf("Finish in %d.%06d. ipv4conns=%d. ipv6conns=%d. Total=%d. ends=%d"
140 " Conns per sec = %d, errors = %u, bytes=%llu\n",
140 " Conns per sec = %d, errors = %llu, bytes=%llu\n",
141 141 elap / 1000000, elap % 1000000, elap / 1000000, elap % 1000000,
142 142 ipv4conns, ipv6conns, ipv4conns + ipv6conns, ipv4conns, ipv6conns, ipv4conns + ipv6conns,
143 143 ends, (ipv4conns + ipv6conns) / (elap / 1000000 + 1), ends, (ipv4conns + ipv6conns) / (elap / 1000000 + 1),
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/catalinux/Conn

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/catalinux/Conn

Clone this repository using git:
git clone git://git.rocketgit.com/user/catalinux/Conn

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main