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)
Added a callback for worker start 32a05f401d5258f06af9db15a00a615859961cc2 Catalin(ux) M. BOIE 2018-04-16 18:07:55
wsdemo improvements 3eb3efd007fc9240ea39fabcdb4729d1367ebad2 Catalin(ux) M. BOIE 2018-04-13 22:47:24
wsdemo added 2baae01f2409496f990b6d673013b66286f0a5af Catalin(ux) M. BOIE 2018-04-02 21:41:40
Various small stuff 0c551268be734dd68a59426315abfc6ef776c60a Catalin(ux) M. BOIE 2018-04-02 21:40:49
More debugging for websocket parsing 66ccde632b280f1aa450610e6b671464b7e56451 Catalin(ux) M. BOIE 2018-04-02 21:39:23
Raise to 4096 to buffer for logging a59dee1fdfe087ff13e4c7012fe29f8da99ad75c Catalin(ux) M. BOIE 2018-04-02 21:38:11
Bump version 9b635cebfffdd6971eefef0ebad395e21684bb8a Catalin(ux) M. BOIE 2018-01-13 18:07:12
Added some more compile flags and websocket1 helper files. fce47295946106956fb70da77244d77ffca09423 Catalin(ux) M. BOIE 2018-01-13 18:03:46
Lots of changes everywhere 91b9113e8f92db07c079c005273683f2e868910c Catalin(ux) M. BOIE 2018-01-12 19:06:04
Require openssl (for websocket) b4b34eb88f38bfd421187da76611cc54476d7309 Catalin(ux) M. BOIE 2017-12-30 23:44:50
Very important fixes 01e33f06a5cdc52fb3795158fd838fcca7055dda Catalin(ux) M. BOIE 2017-12-30 23:39:17
Bump version to 1.0.37 54e8f3bcaf7f7e096c454563039a545a4abb1bf0 Catalin(ux) M. BOIE 2017-12-30 22:13:12
Lots of small fixes 4894de0472e571b8c78294de527bf70089096545 Catalin(ux) M. BOIE 2017-12-30 22:11:09
Checkpoint b6bf45330f046da40d762b6fd10d1bb97bc40036 Catalin(ux) M. BOIE 2017-12-28 00:13:09
Fixed libConn*.so instalation. df1bef9190d30dd11fcd150b41810ce18278b74f Catalin(ux) M. BOIE 2015-04-25 14:43:37
libConn1.so was not included in spec file. dd99625a7fb70d66fa5a91371fb4d2eaf7a4f23d Catalin(ux) M. BOIE 2015-04-25 14:39:32
Small fixes for build system. ab12cbbe149933cbf1b9a9900be1a45d63ee0b29 Catalin(ux) M. BOIE 2015-04-25 14:17:14
Build fixes e7521468199d4da53461fb0c1ffa08e1913c1e9f Catalin(ux) M. BOIE 2015-04-24 19:18:42
Checkpoint before switching to processes not threads de43b387557dde215ab1210838d396e7e7b22c4f Catalin(ux) M. BOIE 2015-01-14 04:13:00
Wpools work now\! f875d6bea1777c3a290bf9bb1aa047f26c935a63 Catalin(ux) M. BOIE 2013-11-13 20:51:13
Commit 32a05f401d5258f06af9db15a00a615859961cc2 - Added a callback for worker start
Author: Catalin(ux) M. BOIE
Author date (UTC): 2018-04-16 18:07
Committer name: Catalin(ux) M. BOIE
Committer date (UTC): 2018-04-16 18:07
Parent(s): 3eb3efd007fc9240ea39fabcdb4729d1367ebad2
Signing key:
Tree: 031a35231cad35876a296db404fc2efa4408a2d7
File Lines added Lines deleted
Conn.c 6 1
Conn.h 3 1
Conn_intern.h 1 0
File Conn.c changed (mode: 100644) (index 2309f5e..8e7bed6)
... ... static struct Conn_cbs Conn_default_cbs =
94 94 .trigger = Conn_default_cbs_trigger, .trigger = Conn_default_cbs_trigger,
95 95 .error = Conn_default_cbs_error, .error = Conn_default_cbs_error,
96 96 .connected = Conn_default_cbs_connected, .connected = Conn_default_cbs_connected,
97 .accept_error = Conn_default_cbs_accept_error
97 .accept_error = Conn_default_cbs_accept_error,
98 .worker_start = NULL
98 99 }; };
99 100
100 101
 
... ... int Conn_set_cb(struct Conn *C, const unsigned int cb_type,
1829 1830 case CONN_CB_ERROR: C->cbs.error = f; break; case CONN_CB_ERROR: C->cbs.error = f; break;
1830 1831 case CONN_CB_CONNECTED: C->cbs.connected = f; break; case CONN_CB_CONNECTED: C->cbs.connected = f; break;
1831 1832 case CONN_CB_ACCEPT_ERROR: C->cbs.accept_error = f; break; case CONN_CB_ACCEPT_ERROR: C->cbs.accept_error = f; break;
1833 case CONN_CB_WORKER_START: C->cbs.worker_start = f; break;
1832 1834 default: return -1; default: return -1;
1833 1835 } }
1834 1836
 
... ... static int Conn_wpool_start_worker(struct Conn *C, struct Conn_wpool_worker *w,
2611 2613 Log(10, "%s: worker prepared, epoll=%d control=%d fd=%d timer=%d\n", Log(10, "%s: worker prepared, epoll=%d control=%d fd=%d timer=%d\n",
2612 2614 __func__, w->epoll_fd, w->control, C->fd, w->timer_fd); __func__, w->epoll_fd, w->control, C->fd, w->timer_fd);
2613 2615
2616 if (C->cbs.worker_start)
2617 C->cbs.worker_start(C);
2618
2614 2619 while (1) { while (1) {
2615 2620 Conn_dispatch_events(w, w->epoll_fd, w->events, Conn_dispatch_events(w, w->epoll_fd, w->events,
2616 2621 CONN_EVENTS_SLOTS, -1); CONN_EVENTS_SLOTS, -1);
File Conn.h changed (mode: 100644) (index c20cfbd..a9199c1)
... ... enum CONN_CB {
36 36 CONN_CB_TRIGGER, CONN_CB_TRIGGER,
37 37 CONN_CB_ERROR, CONN_CB_ERROR,
38 38 CONN_CB_CONNECTED, CONN_CB_CONNECTED,
39 CONN_CB_ACCEPT_ERROR
39 CONN_CB_ACCEPT_ERROR,
40 CONN_CB_WORKER_START
40 41 }; };
41 42
42 43 /* misc */ /* misc */
 
... ... char *Conn_dump(const void *buf_src0, const size_t len_src);
45 46 char *Conn_dumphex(const void *buf_src0, const size_t len_src); char *Conn_dumphex(const void *buf_src0, const size_t len_src);
46 47 void Conn_debug(int fd, const unsigned short debug); void Conn_debug(int fd, const unsigned short debug);
47 48
49
48 50 /* split */ /* split */
49 51 void Conn_split_free(struct Conn_split **s); void Conn_split_free(struct Conn_split **s);
50 52 struct Conn_split *Conn_split(const char *line0); struct Conn_split *Conn_split(const char *line0);
File Conn_intern.h changed (mode: 100644) (index 9529479..7bc5f77)
... ... struct Conn_cbs
99 99 void (*error)(struct Conn *C); void (*error)(struct Conn *C);
100 100 void (*connected)(struct Conn *C); void (*connected)(struct Conn *C);
101 101 void (*accept_error)(struct Conn *C); void (*accept_error)(struct Conn *C);
102 void (*worker_start)(struct Conn *C);
102 103 }; };
103 104
104 105 struct Conn struct Conn
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