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)
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
Call del_obj only if we have a valid file descriptor. 95c90269de0fa59a6ea69c2067827bbf57db16d5 Catalin(ux) M. BOIE 2009-08-20 15:29:42
Conn_enqueue returns now the number of bytes queued or -1. You should really check the error code. ab88f823936ad67ba08aa5fd7984ea735c6c7dd7 Catalin(ux) M. BOIE 2009-08-20 15:28:42
Added CONN_STATE_ERROR. e20e518e10f686eb0b248ae23fe193ea7344594b Catalin(ux) M. BOIE 2009-08-20 15:27:50
Added ERROR_INTERNAL. 380a956dacfc05f0668e6a3fac941a464b5d7deb Catalin(ux) M. BOIE 2009-08-20 15:27:08
Added helper raise_error. 10abeda5c6e4d1fb2c7011b9d2d070ea4db1cc11 Catalin(ux) M. BOIE 2009-08-20 15:26:32
Correctly set error state and errno code. 6eca4a62d11c1881c8803d927e8155f15ca39072 Catalin(ux) M. BOIE 2009-08-20 15:25:11
Converted #defines to enums. 6bafbb8f6887be62ccc668411b3e336d732c82dc Catalin(ux) M. BOIE 2009-08-20 15:20:38
Let *_move_slot functions return an error code (useless right now). 353a5edd7b350383ee79cb5d8536568fb733445b Catalin(ux) M. BOIE 2009-08-20 15:19:24
Commit 417ccd4a48508a810377676658d51c5103168472 - Fixed connections to outside. Still, it is a little mess there.
Signed-off-by: Catalin(ux) M. BOIE <catab@embedromix.ro>
Author: Catalin(ux) M. BOIE
Author date (UTC): 2009-08-21 17:42
Committer name: Catalin(ux) M. BOIE
Committer date (UTC): 2009-09-02 15:42
Parent(s): e1deeb765500ee079802c2cd6543f9c9496d8f9b
Signer:
Signing key:
Signing status: N
Tree: b18bfdfe343a87983eb798b2149aa13e144dec93
File Lines added Lines deleted
Conn.c 4 4
File Conn.c changed (mode: 100644) (index 4175d5f..615b446)
... ... int Conn_commit(struct Conn *C)
610 610 } }
611 611 } }
612 612
613 C->events = CONN_POLLIN;
614 C->revents = 0;
615
613 616 if (do_listen == 1) if (do_listen == 1)
614 617 listen(C->fd, 128); listen(C->fd, 128);
615 618
 
... ... int Conn_commit(struct Conn *C)
617 620 /*TODO:replace connect_a with OPEN?! */ /*TODO:replace connect_a with OPEN?! */
618 621 first_state = CONN_STATE_CONNECT_a; first_state = CONN_STATE_CONNECT_a;
619 622 Conn_pending++; Conn_pending++;
623 C->events |= CONN_POLLOUT;
620 624 } }
621 625
622 626 C->state = first_state; C->state = first_state;
623 627
624 C->events = CONN_POLLIN;
625
626 C->revents = 0;
627
628 628 ret = Conn_engine_add_obj(C); ret = Conn_engine_add_obj(C);
629 629 if (ret != 0) { if (ret != 0) {
630 630 C->xerrno = 0; C->xerrno = 0;
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