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)
Made the server example (s.c) nicer and did more error checking. 519cf83b2d28bee0d3bb25bbc962b3ef5677ee92 Catalin(ux) M. BOIE 2009-04-17 14:32:07
Added a reconnect example. 59b8156a8c5d17c90b5b064b1e1043b365ddac0a Catalin(ux) M. BOIE 2009-04-17 14:31:47
Show a nicer value if the reconnect feat was never used. f51cf254286f76721e517eb69aa00695bdb3b2f5 Catalin(ux) M. BOIE 2009-04-17 14:30:59
Reget the time, even if no events. Else, the expiration will not work. a1167cc19d739d62d6a21fd238c701c60a64cf6d Catalin(ux) M. BOIE 2009-04-17 14:12:57
Be more verbose and show also the flags. 377f288df5d1fbde5c14276e8256fb88216d8761 Catalin(ux) M. BOIE 2009-04-17 13:01:59
Changed split test to show that we can get past 4096 limit. 8ae8fefc1f2d19dbc893a95818ecadcc5c3014e0 Catalin(ux) M. BOIE 2009-04-17 12:46:03
Improved Conn_split (and remove the limitation to 4096 'right' value. ec46e3c94da65fe94ed109727fd3dcb50384a44e Catalin(ux) M. BOIE 2009-04-17 12:31:53
Removed an unsused variable. 1fa664bac9482c6e053bb3ea1d06280b66dadfed Catalin(ux) M. BOIE 2009-04-17 12:04:46
Simplified expand_buf and also fixed an out-of-bounds wrinting. a2a507f235f7847277c2a485af8efb8efaa1ffa7 Catalin(ux) M. BOIE 2009-04-17 12:03:34
Bump up the version. b720ca953940baf51a3e8263e6ec5d397a1c1ff2 Catalin(ux) M. BOIE 2009-04-14 12:39:01
Fixed Conn_rtrim. 5f12cd953b0b998db8530eaed30b91bb181b7b26 Catalin(ux) M. BOIE 2009-04-14 12:38:39
Really fixed Conn_split_get. 5ab1e0a47574fc6776e014be3d8150a048866607 Catalin(ux) M. BOIE 2009-04-14 08:34:38
Added Conn_alphanum (test if a string is alpha numeric or not). 0bb8d19eed947aa82640610a0d894141e466105a Catalin(ux) M. BOIE 2009-04-14 08:22:02
Reverse the meaning of Conn_split_get_e and Conn_split_get. 836229353a26ecc1bac762ece6cf42319113f5b1 Catalin(ux) M. BOIE 2009-04-14 08:21:35
Before calling callback in Conn_for_every_line, just trim '\r'. 51e532893e74c4bee9b6847732442536e79eb2a0 Catalin(ux) M. BOIE 2009-04-14 06:39:29
Added Conn_rtrim function. c37737a16e3d9de95cf659bae546de8808a3e3ed Catalin(ux) M. BOIE 2009-04-14 06:26:16
Revert "Conn_get_line removes also '\r' now." 9d56ef9813225fe1127a2d5800c124aa65d5e1d2 Catalin(ux) M. BOIE 2009-04-14 06:20:50
Changed Conn_split to not modify original line. 2f0d734f54b243356d0d4468691af50aad9e667a Catalin(ux) M. BOIE 2009-04-14 06:00:26
Added Conn_split_get_ull (unsigned long long). 735e92324db56d5e9875f4e123102fc1e995cb4d Catalin(ux) M. BOIE 2009-04-13 22:13:04
Conn_get_line removes also '\r' now. c1e5a9915b3ae6196a68fb1e7f73f295bef1737c Catalin(ux) M. BOIE 2009-04-13 21:56:47
Commit 519cf83b2d28bee0d3bb25bbc962b3ef5677ee92 - Made the server example (s.c) nicer and did more error checking.
Author: Catalin(ux) M. BOIE
Author date (UTC): 2009-04-17 14:32
Committer name: Catalin(ux) M. BOIE
Committer date (UTC): 2009-04-17 14:32
Parent(s): 59b8156a8c5d17c90b5b064b1e1043b365ddac0a
Signing key:
Tree: b059dd378400051432878ad1a5fe73a585f53eb9
File Lines added Lines deleted
examples/s.c 7 2
File examples/s.c changed (mode: 100644) (index ac15060..526a29a)
... ... static int s_data_cb(struct Conn *C, char *line)
68 68
69 69 snprintf(buf, sizeof(buf), "%s\n", line); snprintf(buf, sizeof(buf), "%s\n", line);
70 70 Log(8, "Send back: %s", buf); Log(8, "Send back: %s", buf);
71 Conn_enqueue(C, buf, strlen(buf));
71 if (Conn_enqueue(C, buf, strlen(buf)) != 0) {
72 Log(8, "ERROR: Cannot enqueue all data!\n");
73 /* We return -1 and the current line will not be consumed */
74 return -1;
75 }
72 76
73 77 return 0; return 0;
74 78 } }
 
... ... int main(void)
142 146 Conn_accept_error_cb = s_accept_error; Conn_accept_error_cb = s_accept_error;
143 147
144 148 while (1) { while (1) {
145 ret = Conn_poll(10000);
149 /* -1 we do not have any other business but wait for an event */
150 ret = Conn_poll(-1);
146 151 if (ret == -1) { if (ret == -1) {
147 152 Log(0, "Error calling Conn_poll [%s]!\n", Conn_strerror()); Log(0, "Error calling Conn_poll [%s]!\n", Conn_strerror());
148 153 return 1; return 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