aboutsummaryrefslogtreecommitdiff
path: root/contrib/epee/include/net/abstract_tcp_server2.inl
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #10698tobtoht2026-06-061-16/+45
|\ | | | | | | | | b7ca9e7 p2p: close zone connections before stopping net servers (selsta) ec60113 p2p: make stop signal idempotent (selsta)
| * p2p: close zone connections before stopping net serversselsta2026-06-031-16/+41
| |
| * p2p: make stop signal idempotentselsta2026-06-011-1/+5
| |
* | Merge pull request #10495tobtoht2026-06-051-1/+3
|\ \ | |/ |/| | | c5c9420 p2p: cleaner connection close() (j-berman)
| * p2p: cleaner connection close()j-berman2026-04-281-1/+3
| |
* | epee: skip IPv4 TOS option for non-IPv4 peersiuyua92026-05-141-8/+10
| |
* | p2p: wait_for on shutdown instead of indefinite waitj-berman2026-04-281-3/+7
|/
* connection: try-catch handlesj-berman2026-04-211-1/+6
|
* p2p: fix hanging shutdownj-berman2026-04-041-6/+37
|
* abstract_tcp_server2: add missing returnselsta2026-03-271-0/+1
|
* p2p: connection patchesj-berman2026-02-021-62/+102
| | | | | | | - Make sure the server sends a complete response when the client includes the "Connection: close" header. - Make sure the server terminates in `m_strand` to avoid concurrent socket closure and ops processing.
* Skip ping connections in outgoing countLee *!* Clagett2025-08-191-5/+9
|
* Add check for exception in tcp accept handlerLee *!* Clagett2025-06-121-0/+4
|
* Limit scope of TCP checks to incoming onlyLee *!* Clagett2025-02-261-1/+1
|
* Fix build with boost ASIO 0.87. Support boost 1.66+Lee *!* Clagett2025-02-141-100/+108
|
* Set response limits on http server connectionsLee *!* Clagett2025-02-141-9/+48
|
* Cleanup TCP throttling code (performance) + move connection checksLee *!* Clagett2024-12-191-5/+19
|
* properly terminate interrupted TCP connection. fixes #8685j-berman2023-06-091-4/+1
|
* address PR commentsj-berman2022-07-081-332/+340
|
* connection: fix implementationanon2022-07-051-757/+947
|
* Refactor out pragma_comp_defsJeffrey2022-04-181-10/+0
| | | | | | | Relevant commits on the old cleanup PR: 36933c7f5c7778e2d7fbfea5361c11fb41070467 21e43de0f300ee47b7e597098908601bf591950b 3c678bb1cedfd7b865ac2e7aaf014de4bfb3eb3d
* Eliminate dependence on boost::interprocess #8223Jeffrey2022-03-301-5/+5
| | | | | | | | | | | | | In this repo, `boost::interprocess` was being used soley to make `uint32_t` operations atomic. So I replaced each instance of `boost::interprocess::ipcdetail::atomic(...)32` with `std::atomic` methods. I replaced member declarations as applicable. For example, when I needed to change a `volatile uint32_t` into a `std::atomic<uint32_t>`. Sometimes, a member was being used a boolean flag, so I replaced it with `std::atomic<bool>`. You may notice that I didn't touch `levin_client_async.h`. That is because this file is entirely unused and will be deleted in PR monero-project#8211. Additional changes from review: * Make some local variables const * Change postfix operators to prefix operators where value was not need
* Split epee/string_tools.h and encapsulate boost::lexical_castmj-xmr2021-04-161-1/+1
|
* Merge pull request #7274luigi11112021-03-201-4/+4
|\ | | | | | | daf023d epee: don't log raw packet data (moneromooo-monero)
| * epee: don't log raw packet datamoneromooo-monero2021-01-031-4/+4
| |
* | Merge pull request #7308luigi11112021-02-151-2/+0
|\ \ | | | | | | | | | | | | df2f00f boosted_tcp_server: fix connection lifetime (anon) 3833624 boosted_tcp_server: add segfault demo (anon)
| * | boosted_tcp_server: fix connection lifetimeanon2021-01-191-2/+0
| |/
* / Reduce compilation time of epee/portable_storage.hmj-xmr2021-02-061-0/+1
|/
* ssl: buffered handshake detectionanon2020-12-281-9/+8
|
* epee: fix some issues using connections after shutdownmoneromooo-monero2020-12-261-6/+21
|
* Fix boost <1.60 compilation and fix boost 1.73+ warningsLee Clagett2020-05-311-10/+9
|
* abstract_tcp_server2: guard against negative timeoutsmoneromooo-monero2019-12-161-5/+16
|
* epee: close connection when the peer has done somoneromooo-monero2019-11-111-1/+7
| | | | | | This fixes rapid reconnections failing as the peer hasn't yet worked out the other side is gone, and will reject "duplicate" connections until a timeout.
* Merge pull request #6006luigi11112019-10-241-2/+6
|\ | | | | | | 9f3be3b epee: use SO_REUSEADDR on non-Windows targets (xiphon)
| * epee: use SO_REUSEADDR on non-Windows targetsxiphon2019-10-221-2/+6
| |
* | Merge pull request #5986luigi11112019-10-221-1/+1
|\ \ | |/ |/| | | 1080136 abstract_tcp_server2: move 'Trying to connect' from error to debug (moneromooo-monero)
| * abstract_tcp_server2: move "Trying to connect" from error to debugmoneromooo-monero2019-10-141-1/+1
| | | | | | | | and fix the message grammar
* | Merge pull request #5947luigi11112019-10-141-4/+2
|\ \ | | | | | | | | | c9cfbf7 epee: tcp server - set SO_LINGER instead of SO_REUSEADDR option (xiphon)
| * | epee: tcp server - set SO_LINGER instead of SO_REUSEADDR optionxiphon2019-10-021-4/+2
| |/
* | Merge pull request #5937luigi11112019-10-141-1/+1
|\ \ | |/ |/| | | 4b654f6 abstract_tcp_server2: log pointer, not contents, where appropriate (moneromooo-monero)
| * abstract_tcp_server2: log pointer, not contents, where appropriatemoneromooo-monero2019-09-271-1/+1
| |
* | Merge pull request #5910luigi11112019-09-301-0/+5
|\ \ | | | | | | | | | 1b91beb abstract_tcp_server2: fix lingering connections (moneromooo-monero)
| * | abstract_tcp_server2: fix lingering connectionsmoneromooo-monero2019-09-121-0/+5
| | | | | | | | | | | | | | | | | | Resetting the timer after shutdown was initiated would keep a reference to the object inside ASIO, which would keep the connection alive until the timer timed out
* | | Merge pull request #5893luigi11112019-09-301-1/+13
|\ \ \ | |_|/ |/| | | | | Coverity fixes [3a81639, 1bd962d, 2825f07, d099658, d46f701, cd57a10] (anonimal)
| * | epee: abstract_tcp_server2: resolve CID 203919 (DC.WEAK_CRYPTO)anonimal2019-09-081-1/+13
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem actually exists in two parts: 1. When sending chunks over a connection, if the queue size is greater than N, the seed is predictable across every monero node. >"If rand() is used before any calls to srand(), rand() behaves as if it was seeded with srand(1). Each time rand() is seeded with the same seed, it must produce the same sequence of values." 2. The CID speaks for itself: "'rand' should not be used for security-related applications, because linear congruential algorithms are too easy to break." *But* this is an area of contention. One could argue that a CSPRNG is warranted in order to fully mitigate any potential timing attacks based on crafting chunk responses. Others could argue that the existing LCG, or even an MTG, would suffice (if properly seeded). As a compromise, I've used an MTG with a full bit space. This should give a healthy balance of security and speed without relying on the existing crypto library (which I'm told might break on some systems since epee is not (shouldn't be) dependent upon the existing crypto library).
* / depends: fix MacOS build with Clang 3.7.1Lee Clagett2019-09-081-1/+1
|/
* Added support for "noise" over I1P/Tor to mask Tx transmission.Lee Clagett2019-07-171-9/+8
|
* Add ref-counted buffer byte_slice. Currently used for sending TCP data.Lee Clagett2019-07-161-37/+22
|
* Add IPv6 supportThomas Winget2019-07-311-57/+266
| | | | | | | | | | | | | | | | | | | new cli options (RPC ones also apply to wallet): --p2p-bind-ipv6-address (default = "::") --p2p-bind-port-ipv6 (default same as ipv4 port for given nettype) --rpc-bind-ipv6-address (default = "::1") --p2p-use-ipv6 (default false) --rpc-use-ipv6 (default false) --p2p-require-ipv4 (default true, if ipv4 bind fails and this is true, will not continue even if ipv6 bind successful) --rpc-require-ipv4 (default true, description as above) ipv6 addresses are to be specified as "[xx:xx:xx::xx:xx]:port" except in the cases of the cli args for bind address. For those the square braces can be omitted.
* Merge pull request #5531luigi11112019-07-241-4/+8
|\ | | | | | | 9a6006b abstract_tcp_server2: move some things out of a lock (moneromooo-monero)