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)
Conn_commit will return error, so, do not call error callback. c97f8be6cfd55c32d78e62a30375d7c014dc0e0a Catalin(ux) M. BOIE 2009-08-31 20:08:17
Cosmetic changes. 54a9e723c3a958e69f491b55df83f96b6814af44 Catalin(ux) M. BOIE 2009-08-31 20:07:51
Raised default listen para to 4096 from 128. somaxconn still has prio. af39935492f39786879ea6ced9f7dfe929c4879d Catalin(ux) M. BOIE 2009-08-31 19:56:36
Store in time_open the accept timestamp so Conn_lifetime will work on srv side. 0522d638872644d7bd6490027a7ae99b1fb4b16f Catalin(ux) M. BOIE 2009-08-31 19:55:44
Improved blackhole examples. 128f393aba2b07c4aa0e41d962a8239dffc3cc10 Catalin(ux) M. BOIE 2009-08-31 17:41:30
More entries to .gitignore. e1d71bcf46a9b61a4aa4e17b857ff9035d7fb6c7 Catalin(ux) M. BOIE 2009-08-31 17:39:45
Tweaked a little the debug level for some messages. 1a27a1acf2ede62fb02b074f232badeb847bfcb8 Catalin(ux) M. BOIE 2009-08-31 17:39:21
Added Conn_lifetime (returns the time in ms between connected state and now). 4e3f1aaabc21d4cbdac26e42612ebd0298c8d86e Catalin(ux) M. BOIE 2009-08-31 17:22:37
Added Conn_sys that logs some system variables related to network perf. af960f317b8ca9a8f78fe44e80ddbdb6a9483e6f Catalin(ux) M. BOIE 2009-08-31 16:36:00
Better output flags. d57a98c2b158aeb30530c2e5188977a40336a360 Catalin(ux) M. BOIE 2009-08-25 20:37:55
Improved examples. 75439293c1d067327e606d72ec6290b43110bf24 Catalin(ux) M. BOIE 2009-08-25 20:37:29
Removed line1.c because duplicates code. 1119059afacde8d0b7b7dab77850dd6b71684190 Catalin(ux) M. BOIE 2009-08-25 20:11:52
Removed *.run becasue we have a generic run script. 007083cd9d1abefe4dd73e65c9026a2607fbcd4e Catalin(ux) M. BOIE 2009-08-25 20:09:00
Removed bind_s example because blackhole_s will take place. b9b06d98f00413b5a5df9d7bc9b3bd05b5536f28 Catalin(ux) M. BOIE 2009-08-25 20:07:38
Added Conn_set_address helper. 1b6e7e8a294ac88aa966e4e43bb77a4fdff0ca5a Catalin(ux) M. BOIE 2009-08-25 19:21:00
Fixed storing of local address (do not overwrite remote address). d431edba6699d1363e4d616aa6f96588272188b0 Catalin(ux) M. BOIE 2009-08-25 18:37:55
Added Conn_stop to eleganly stop Conn system. 4ca191771c5c119e9755a5af3158fabe43ddf5f2 Catalin(ux) M. BOIE 2009-08-25 18:30:32
Replaced Conn_protocol with Conn_get_socket_protocol. a1cbc5c612d82e6d1341524c67fe249648c81806 Catalin(ux) M. BOIE 2009-08-25 18:16:45
Compressed a little the POLL flags. 47b5dce395694c18c973e3ce6ba9a71c690a41bc Catalin(ux) M. BOIE 2009-08-25 18:16:16
Store also local address for incoming connections. 0548ce6434185cdd36e110c61315b4cb21849666 Catalin(ux) M. BOIE 2009-08-25 18:15:46
Commit c97f8be6cfd55c32d78e62a30375d7c014dc0e0a - Conn_commit will return error, so, do not call error callback.
Signed-off-by: Catalin(ux) M. BOIE <catab@embedromix.ro>
Author: Catalin(ux) M. BOIE
Author date (UTC): 2009-08-31 20:08
Committer name: Catalin(ux) M. BOIE
Committer date (UTC): 2009-09-02 15:42
Parent(s): 54a9e723c3a958e69f491b55df83f96b6814af44
Signing key:
Tree: 648456d31f8acaa5bd41664e66d2fdf58b24115e
File Lines added Lines deleted
Conn.c 10 15
File Conn.c changed (mode: 100644) (index 8a4cf86..304e689)
... ... int Conn_commit(struct Conn *C)
637 637 "Cannot create socket (%d, %d, %d) [%s]", "Cannot create socket (%d, %d, %d) [%s]",
638 638 C->sock_domain, C->sock_type, C->sock_protocol, C->sock_domain, C->sock_type, C->sock_protocol,
639 639 strerror(errno)); strerror(errno));
640 C->xerrno = errno;
641 goto out;
640 return -1;
642 641 } }
643 642
644 643 Conn_setnonblock(C->fd); Conn_setnonblock(C->fd);
 
... ... int Conn_commit(struct Conn *C)
660 659 snprintf(Conn_error, sizeof(Conn_error), snprintf(Conn_error, sizeof(Conn_error),
661 660 "Cannot bind on %s/%d [%s]", "Cannot bind on %s/%d [%s]",
662 661 C->bind_addr, C->bind_port, strerror(errno)); C->bind_addr, C->bind_port, strerror(errno));
663 C->state = CONN_STATE_ERROR;
664 C->error_state = CONN_ERROR_SOCKET; /*TODO:BIND?*/
665 C->xerrno = errno;
666 goto out;
662 goto out_free_fd;
667 663 } }
668 664 } }
669 665
 
... ... int Conn_commit(struct Conn *C)
680 676 C->events |= CONN_POLLOUT; C->events |= CONN_POLLOUT;
681 677 } }
682 678
683 C->state = first_state;
684
685 679 ret = Conn_engine_add_obj(C); ret = Conn_engine_add_obj(C);
686 if (ret != 0) {
687 C->xerrno = 0;
688 goto out;
689 }
680 if (ret != 0)
681 goto out_free_fd;
690 682
691 return 0;
683 C->state = first_state;
692 684
693 out:
694 C->error_state = CONN_ERROR_SOCKET;
685 return 0;
695 686
687 out_free_fd:
688 close(C->fd);
689 C->fd = -1;
690 C->type = CONN_TYPE_UNK;
696 691 return -1; return -1;
697 692 } }
698 693
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