aboutsummaryrefslogtreecommitdiff
path: root/zenutil/include
diff options
context:
space:
mode:
authorzousar <[email protected]>2022-01-27 01:01:05 -0700
committerGitHub <[email protected]>2022-01-27 09:01:05 +0100
commitcf38d96543b2086a863ef4823ee769ec45cc45a4 (patch)
tree1c5c56053f43271398d9f9a469383f29df76c570 /zenutil/include
parentImplement SkipData,QueryLocal,StoreLocal for HandleRpcGetCacheRecords (#41) (diff)
downloadzen-cf38d96543b2086a863ef4823ee769ec45cc45a4.tar.xz
zen-cf38d96543b2086a863ef4823ee769ec45cc45a4.zip
Handle HTTP port collisions when initializing server (#40)
Diffstat (limited to 'zenutil/include')
-rw-r--r--zenutil/include/zenutil/zenserverprocess.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/zenutil/include/zenutil/zenserverprocess.h b/zenutil/include/zenutil/zenserverprocess.h
index 55b9a50cd..2a3146e2d 100644
--- a/zenutil/include/zenutil/zenserverprocess.h
+++ b/zenutil/include/zenutil/zenserverprocess.h
@@ -100,11 +100,12 @@ public:
// additional state. For example, you can use the session ID
// to introduce additional named objects
std::atomic<uint32_t> Pid;
- std::atomic<uint16_t> ListenPort;
+ std::atomic<uint16_t> DesiredListenPort;
std::atomic<uint16_t> Flags;
uint8_t SessionId[12];
std::atomic<uint32_t> SponsorPids[8];
- uint8_t Padding[12];
+ std::atomic<uint16_t> EffectiveListenPort;
+ uint8_t Padding[10];
enum class FlagsEnum : uint16_t
{
@@ -125,8 +126,8 @@ public:
void Initialize();
[[nodiscard]] bool InitializeReadOnly();
- [[nodiscard]] ZenServerEntry* Lookup(int ListenPort);
- ZenServerEntry* Register(int ListenPort);
+ [[nodiscard]] ZenServerEntry* Lookup(int DesiredListenPort);
+ ZenServerEntry* Register(int DesiredListenPort);
void Sweep();
void Snapshot(std::function<void(const ZenServerEntry&)>&& Callback);
inline bool IsReadOnly() const { return m_IsReadOnly; }