diff options
author | Andreas Schneider <asn@samba.org> | 2015-07-15 15:18:08 +0200 |
---|---|---|
committer | Andreas Schneider <asn@samba.org> | 2015-07-15 15:18:08 +0200 |
commit | 00eb31542d26c4f4cfb245a58795fcaf5653c953 (patch) | |
tree | 06c417833ac0762f27cbc2171515065a1e7a3c7b /TODO | |
parent | c12981efec6967480a15e24a1ee9fa188365f85e (diff) | |
download | socket_wrapper-00eb31542d26c4f4cfb245a58795fcaf5653c953.tar.gz socket_wrapper-00eb31542d26c4f4cfb245a58795fcaf5653c953.tar.xz socket_wrapper-00eb31542d26c4f4cfb245a58795fcaf5653c953.zip |
Update TODO
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 20 |
1 files changed, 13 insertions, 7 deletions
@@ -9,13 +9,19 @@ look at the list below. Library: --------- -* Add support for fd passing in sendmsg/recvmsg. - Scenario: - We accept a connection from a client and need to pass the fd to another - child we forked. socket_wrapper then needs to send the 'struct socket_info' - to the child first and set it up there. - Or do it like swrap_accept() and call getpeername() and getsockname(). -* Add support for threading. +Goals: +* Thread safety +* The proposed way ==> - fd-passing for tcp sockets (for free) + Approach: + - tdb "in small". So a "db file". + - for each socket an entry in the db file + (file, mmap, robust mutex. e.g. one file per local ip addr) + - socket_info : structure in db. protected by pthread robust mutexes + - socket_info_fd : --> pointer into mmap area of db + - free-list + - fd-passing: pass index in array + - the last element we pass is not a fd but the index number in the + mmaped file * Use realpath() in socket_wrapper_dir(). Testing: |