diff options
Diffstat (limited to 'src/pdesc.h')
-rw-r--r-- | src/pdesc.h | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/pdesc.h b/src/pdesc.h index d81798e..af79364 100644 --- a/src/pdesc.h +++ b/src/pdesc.h @@ -10,6 +10,7 @@ enum pdesc_remote_errno { REMOTE_EXISTS, REMOTE_NOT_FOUND, REMOTE_PACKET_INVALID, + REMOTE_ADDR_INVALID, REMOTE_ICMP_ECHO_CLIENT, REMOTE_ICMP_REPLY_SERVER, REMOTE_MAX_DESCRIPTORS, @@ -17,16 +18,22 @@ enum pdesc_remote_errno { enum pdesc_state { PDESC_STATE_INVALID = 0, PDESC_STATE_AUTH, PDESC_STATE_DATA }; +struct paddr { + struct sockaddr_storage sockaddr; + char str[INET6_ADDRSTRLEN]; +}; + struct pdesc { enum pdesc_state state; - struct sockaddr_storage peer; - char peer_str[INET6_ADDRSTRLEN]; + struct paddr peer; uint16_t identifier; uint16_t sequence; }; -void pdesc_init(struct pdesc *, struct sockaddr_storage *, uint16_t identifier); +void pdesc_init(struct pdesc *, uint16_t identifier); enum pdesc_remote_errno pdesc_find_current_remote(struct psock *, struct pdesc ** const); +int pdesc_set_addr(struct paddr *, struct sockaddr_storage const *); + #endif |