git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Kernel/x86 - Oops, bad entry
[tpg/acess2.git]
/
Modules
/
IPStack
/
udp.h
diff --git
a/Modules/IPStack/udp.h
b/Modules/IPStack/udp.h
index
36c36e1
..
3914789
100644
(file)
--- a/
Modules/IPStack/udp.h
+++ b/
Modules/IPStack/udp.h
@@
-9,6
+9,7
@@
#include "ipv4.h"
typedef struct sUDPHeader tUDPHeader;
#include "ipv4.h"
typedef struct sUDPHeader tUDPHeader;
+typedef struct sUDPEndpoint tUDPEndpoint;
typedef struct sUDPPacket tUDPPacket;
typedef struct sUDPChannel tUDPChannel;
typedef struct sUDPPacket tUDPPacket;
typedef struct sUDPChannel tUDPChannel;
@@
-21,9
+22,20
@@
struct sUDPHeader
Uint8 Data[];
};
Uint8 Data[];
};
+struct sUDPEndpoint
+{
+ Uint16 Port;
+ Uint16 AddrType;
+ union {
+ tIPv4 v4;
+ tIPv6 v6;
+ } Addr;
+};
+
struct sUDPPacket
{
struct sUDPPacket *Next;
struct sUDPPacket
{
struct sUDPPacket *Next;
+ tUDPEndpoint Remote;
size_t Length;
Uint8 Data[];
};
size_t Length;
Uint8 Data[];
};
@@
-33,15
+45,15
@@
struct sUDPChannel
struct sUDPChannel *Next;
tInterface *Interface;
Uint16 LocalPort;
struct sUDPChannel *Next;
tInterface *Interface;
Uint16 LocalPort;
- union {
- tIPv4 v4;
- tIPv6 v6;
- } RemoteAddr;
- Uint16 RemotePort;
+
+ tUDPEndpoint Remote; // Only accept packets form this address/port pair
+ int RemoteMask; // Mask on the address
+
tVFS_Node Node;
tVFS_Node Node;
- tS
pinlock
lQueue;
+ tS
hortSpinlock
lQueue;
tUDPPacket * volatile Queue;
tUDPPacket *QueueEnd;
};
#endif
tUDPPacket * volatile Queue;
tUDPPacket *QueueEnd;
};
#endif
+
UCC
git Repository :: git.ucc.asn.au