Commit Graph

647 Commits (959e0912a16678f996a3fb6ca4bceb2efff4b1ce)
 

Author SHA1 Message Date
Dirk Engling 959e0912a1 Bind dual stack by default
Dirk Engling 7c3279a028 Allow binding to v4 and v6 addresses always
Dirk Engling 2afc4893bf Prepare opentracker for dual stack capabilities
Dirk Engling eb8834f778 Move further towards dual stack capable opentracker, name more constants
Dirk Engling 9275eb3f82 Clean up pointer to task object
Dirk Engling 73e839f5ff Tidy up v6 handler
Dirk Engling aca3ee0ac8 Prevent proxied ips of the wrong flavour to poison our clients
Dirk Engling 5b98dcf3a3 Limit ipv6 udp replies to an amount that does not create too large UDP packets. Credits to anonymous donor
Dirk Engling a3251ffac7 mask bits to be checked in ot_net
Dirk Engling 5805fe5f86 Dont take address of address
Dirk Engling 543ab73017 Allow networks to be used instead of ip addresses when blessing is involved
Dirk Engling ede702c7ff Add docs about reverse proxies
Dirk Engling 6604d65779 Some clients have added the /stats URL as /announce URL and cause a lot of expensive operations. Prevent that
Dirk Engling 9f08041585 Fix tasklist iterators
Dirk Engling 384799b5b3 Merge branch 'master' into erdgeist-fix-top10-stats
Dirk Engling 4baec2592c handle -1 length reads properly
Dirk Engling 9c98e1e775 Remember hash and not torrent pointer for use after releasing the lock on torrent vector
Dirk Engling cc24e1ab2d Add error if WANT_DYNAMIC_ACCESSLIST is enabled without any accesslist
Dirk Engling 6e591d7437 Add atomicity qualifier
Dirk Engling f62398c748 Clean accesslists every five minutes
Dirk Engling be825f5759 Add support for dynamic accesslists
Dirk Engling 110868ec4e Fix return code check inversion introduced in last commit
Dirk Engling e89905166c Mark return code of write() as intentionally unused
Romain Porte 019d58d154 fix implicit fallthrough spelling
This commit fixes the syntax of the implicit fallthrough comments, in
order to be matched by GCC (and probably other compilers as well) with
the following regular expression:

[ \t.!]*([Ee]lse,? |[Ii]ntentional(ly)? )? fall(s | |-)?thr(ough|u)[
\t.!]*(-[^\n\r]*)?

See: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-fallthrough=
Romain Porte c4fc41a831 opentracker.c: check set*id return values
This commit fix the following similar warnings:

    opentracker.c:562:7: warning: ignoring return value of ‘setegid’
    declared with attribute ‘warn_unused_result’ [-Wunused-result]
    […]

The man page of these functions ask users to explicitly check the return
value in case of any error happening.
Dirk Engling 9a20ebe3f2 Fix typo. Thanks to Romain Porte
Dirk Engling 68a17b3ae4 Obey DESTDIR macro. Thanks to Romain Porte
Dirk Engling 80faf1c452 Using strip from enviroment to allow different strippers
Dirk Engling 298fe52f52 Make accesslists work again by testing the actual result of bsearch. Thanks to Hanno
Dirk Engling 3168071175 Fix two issues when splitting an iovec to large iobatches
Dirk Engling 99544a1030 Handle eagain case in trywrite
Dirk Engling e33efb5086 Add newline to debug string
Dirk Engling 0178c27662 Merge branch 'split-iobatches' of erdgeist.org:opentracker into split-iobatches
Dirk Engling dfe687aa81 Remove old mman header
Dirk Engling 397cd035a4 Turn mmaps into malloc
Dirk Engling 2f228c27c2 Retry successful writes immediately
Dirk Engling 95f1780f0b Split huge iovecs over multiple io_batches
Dirk Engling e87978860b gzip iovecs always end on the boundary and don't need to be fixed
Dirk Engling 1a349bfa43 Add a handler for the EAGAIN reason code to iob_send
Dirk Engling bfc398182f Rework fullscrape worker, unifying non-gzip and gzip code was a bad idea
Dirk Engling 27f8189d84 accesslist checker should not operate on an empty list
Dirk Engling 58dedd001d srandomdev is not available on linuxes by default
Dirk Engling b73b3b17cc Use arc4random whereever we need strong entropy
Dirk Engling ccef1d0ccd Use dev random by default
Dirk Engling 616119ee22 Turn random() to nrand48 in inner loop where it is not cryptographically relevant to avoid futex storm. Thanks and credits to Bart Smienk
Dirk Engling 0695b48870 White space
Dirk Engling 00bd3b2009 unmap file if a memory allocation error occurs
Dirk Engling 102ba9075b Make accesslist reload thread safe. The last commit actually would make a free possible while another thread was bsearching that memory
Dirk Engling fde79836e6 Try accessing the access lists without locks by making the replacement process as atomic as possible.
Dirk Engling 7c905ba729 De-bottleneck mutex access code