Merge branch 'USNavalResearchLaboratory:master' into master

pull/85/head
mullerj 2024-06-13 22:36:12 -04:00 committed by GitHub
commit 0eb0b82fa0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 23 additions and 21 deletions

View File

@ -152,15 +152,15 @@ namespace ProtoPktSOCKS
UINT8 GetVersion() const UINT8 GetVersion() const
{return ((pkt_length > OFFSET_VERSION) ? {return ((pkt_length > OFFSET_VERSION) ?
(((UINT8*)buffer_ptr)[OFFSET_VERSION]) : 0);} GetUINT8(OFFSET_VERSION) : 0);}
Command GetCommand() const Command GetCommand() const
{return ((pkt_length > OFFSET_COMMAND) ? {return ((pkt_length > OFFSET_COMMAND) ?
(Command)(((UINT8*)buffer_ptr)[OFFSET_COMMAND]) : CMD_INVALID);} (Command)GetUINT8(OFFSET_COMMAND) : CMD_INVALID);}
AddrType GetAddressType() const AddrType GetAddressType() const
{return ((pkt_length > OFFSET_ATYPE) ? {return ((pkt_length > OFFSET_ATYPE) ?
(AddrType)(((UINT8*)buffer_ptr)[OFFSET_ATYPE]) : ADDR_INVALID);} (AddrType)GetUINT8(OFFSET_ATYPE) : ADDR_INVALID);}
UINT8 GetAddressLength() const; UINT8 GetAddressLength() const;
@ -175,18 +175,18 @@ namespace ProtoPktSOCKS
void SetVersion(UINT8 version) void SetVersion(UINT8 version)
{ {
((UINT8*)buffer_ptr)[OFFSET_VERSION] = version; SetUINT8(OFFSET_VERSION, version);
pkt_length = 1; pkt_length = 1;
} }
void SetCommand(Command cmd) void SetCommand(Command cmd)
{ {
((UINT8*)buffer_ptr)[OFFSET_COMMAND] = (UINT8)cmd; SetUINT8(OFFSET_COMMAND, (UINT8)cmd);
pkt_length = 2; pkt_length = 2;
} }
void SetAddressType(AddrType addrType) void SetAddressType(AddrType addrType)
{ {
((UINT8*)buffer_ptr)[OFFSET_RESERVED] = 0; ((UINT8*)buffer_ptr)[OFFSET_RESERVED] = 0;
((UINT8*)buffer_ptr)[OFFSET_ATYPE] = (UINT8)addrType; SetUINT8(OFFSET_ATYPE, (UINT8)addrType);
pkt_length = 4; pkt_length = 4;
} }
bool SetAddress(const ProtoAddress& theAddr); // note this sets port, too bool SetAddress(const ProtoAddress& theAddr); // note this sets port, too
@ -244,16 +244,16 @@ namespace ProtoPktSOCKS
UINT8 GetVersion() const UINT8 GetVersion() const
{return ((pkt_length > OFFSET_VERSION) ? {return ((pkt_length > OFFSET_VERSION) ?
(((UINT8*)buffer_ptr)[OFFSET_VERSION]) : 0);} GetUINT8(OFFSET_VERSION) : 0);}
Type GetType() const Type GetType() const
{return ((pkt_length > OFFSET_TYPE) ? {return ((pkt_length > OFFSET_TYPE) ?
(Type)(((UINT8*)buffer_ptr)[OFFSET_TYPE]) : TYPE_INVALID);} (Type)GetUINT8(OFFSET_TYPE) : TYPE_INVALID);}
AddrType GetAddressType() const AddrType GetAddressType() const
{return ((pkt_length > OFFSET_ATYPE) ? {return ((pkt_length > OFFSET_ATYPE) ?
(AddrType)(((UINT8*)buffer_ptr)[OFFSET_ATYPE]) : ADDR_INVALID);} (AddrType)GetUINT8(OFFSET_ATYPE) : ADDR_INVALID);}
UINT8 GetAddressLength() const; UINT8 GetAddressLength() const;
const char* GetAddressPtr() const const char* GetAddressPtr() const
@ -266,12 +266,12 @@ namespace ProtoPktSOCKS
// Reply building (call these in order // Reply building (call these in order
void SetVersion(UINT8 version) void SetVersion(UINT8 version)
{ {
((UINT8*)buffer_ptr)[OFFSET_VERSION] = version; SetUINT8(OFFSET_VERSION, version);
pkt_length = 1; pkt_length = 1;
} }
void SetType(Type replyType) void SetType(Type replyType)
{ {
((UINT8*)buffer_ptr)[OFFSET_TYPE] = (UINT8)replyType; SetUINT8(OFFSET_TYPE, (UINT8)replyType);
pkt_length = 2; pkt_length = 2;
} }
void SetAddress(AddrType addrType, const char* addrPtr, UINT8 addrLen); void SetAddress(AddrType addrType, const char* addrPtr, UINT8 addrLen);
@ -316,12 +316,12 @@ namespace ProtoPktSOCKS
UINT8 GetFrag() const UINT8 GetFrag() const
{return ((pkt_length > OFFSET_FRAG) ? {return ((pkt_length > OFFSET_FRAG) ?
(((UINT8*)buffer_ptr)[OFFSET_FRAG]) : 0);} GetUINT8(OFFSET_FRAG) : 0);}
AddrType GetAddressType() const AddrType GetAddressType() const
{return ((pkt_length > OFFSET_ATYPE) ? {return ((pkt_length > OFFSET_ATYPE) ?
(AddrType)(((UINT8*)buffer_ptr)[OFFSET_ATYPE]) : ADDR_INVALID);} (AddrType)GetUINT8(OFFSET_ATYPE) : ADDR_INVALID);}
UINT8 GetAddressLength() const; UINT8 GetAddressLength() const;
const char* GetAddressPtr() const const char* GetAddressPtr() const
@ -342,7 +342,8 @@ namespace ProtoPktSOCKS
void SetFragment(UINT8 fragId) void SetFragment(UINT8 fragId)
{ {
((UINT8*)buffer_ptr)[OFFSET_RESERVED] = 0; ((UINT8*)buffer_ptr)[OFFSET_RESERVED] = 0;
((UINT8*)buffer_ptr)[OFFSET_FRAG] = fragId; SetUINT8(OFFSET_RESERVED, 0);
SetUINT8(OFFSET_FRAG, fragId);
pkt_length = OFFSET_FRAG + 1; pkt_length = OFFSET_FRAG + 1;
} }
void SetAddress(AddrType addrType, const char* addrPtr, UINT8 addrLen); void SetAddress(AddrType addrType, const char* addrPtr, UINT8 addrLen);

View File

@ -44,7 +44,7 @@ norp: $(LIBPROTO) $(LIBNORM) $(NORP_OBJ)
$(CC) $(LDFLAGS) -o $@ $(NORP_OBJ) $(LIBS) $(LIBNORM) $(LIBPROTO) $(CC) $(LDFLAGS) -o $@ $(NORP_OBJ) $(LIBS) $(LIBNORM) $(LIBPROTO)
clean: clean:
rm -f norp $(COMMON)/*.o; rm -f norp $(COMMON)/*.o $(COMMON)/protoPktSOCKS.o;
$(MAKE) -C $(NORM)/makefiles -f Makefile.$(SYSTEM) clean; $(MAKE) -C $(NORM)/makefiles -f Makefile.$(SYSTEM) clean;
$(MAKE) -C $(PROTOLIB)/makefiles -f Makefile.$(SYSTEM) clean; $(MAKE) -C $(PROTOLIB)/makefiles -f Makefile.$(SYSTEM) clean;

View File

@ -8,8 +8,8 @@ WX_CFLAGS = `$(WX_CONFIG_PATH) --cxxflags`
WX_LIBS = `$(WX_CONFIG_PATH) --libs` WX_LIBS = `$(WX_CONFIG_PATH) --libs`
# 2) System-specific flags and libs # 2) System-specific flags and libs
SYSTEM_CFLAGS = -arch x86_64 SYSTEM_CFLAGS =
SYSTEM_LIBS = -arch x86_64 -lresolv SYSTEM_LIBS = -lresolv -lpcap
# 3) System-specific Protolib flags (_must_ correspond to Protolib SYSTEM_HAVES) # 3) System-specific Protolib flags (_must_ correspond to Protolib SYSTEM_HAVES)
# Must choose appropriate for the following: # Must choose appropriate for the following:

View File

@ -12,7 +12,7 @@
// numbers for NORM traffic. // numbers for NORM traffic.
// Uncomment this to enable new NORM port handling to improve NAT compatibility // Uncomment this to enable new NORM port handling to improve NAT compatibility
#define NEW_PORT #define NEW_PORT 1
PortPool::PortPool(UINT16 basePort) PortPool::PortPool(UINT16 basePort)
: base_port(basePort) : base_port(basePort)
@ -533,6 +533,7 @@ bool NorpSession::PutClientAuthReply()
else else
{ {
// AuthReply was fully sent // AuthReply was fully sent
TRACE("AuthReply fully sent %d bytes ...\n", remote_index);
socks_client_socket.StopOutputNotification(); socks_client_socket.StopOutputNotification();
socks_state = SOCKS_GET_REQUEST; socks_state = SOCKS_GET_REQUEST;
remote_pending = remote_index = 0; remote_pending = remote_index = 0;

@ -1 +1 @@
Subproject commit dc92c6b8ccc75a01ecd2d7850f6bc7d8a7fe671d Subproject commit 0ea5b0091782133c18599fbd5acd9f879c362664