Annotation of embedaddon/miniupnpc/include/portlistingparse.h, revision 1.1
1.1 ! misho 1: /* $Id: portlistingparse.h,v 1.11 2015/07/21 13:16:55 nanard Exp $ */
! 2: /* MiniUPnP project
! 3: * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
! 4: * (c) 2011-2015 Thomas Bernard
! 5: * This software is subject to the conditions detailed
! 6: * in the LICENCE file provided within the distribution */
! 7: #ifndef PORTLISTINGPARSE_H_INCLUDED
! 8: #define PORTLISTINGPARSE_H_INCLUDED
! 9:
! 10: #include "miniupnpc_declspec.h"
! 11: /* for the definition of UNSIGNED_INTEGER */
! 12: #include "miniupnpctypes.h"
! 13:
! 14: #ifdef __cplusplus
! 15: extern "C" {
! 16: #endif
! 17:
! 18: /* sample of PortMappingEntry :
! 19: <p:PortMappingEntry>
! 20: <p:NewRemoteHost>202.233.2.1</p:NewRemoteHost>
! 21: <p:NewExternalPort>2345</p:NewExternalPort>
! 22: <p:NewProtocol>TCP</p:NewProtocol>
! 23: <p:NewInternalPort>2345</p:NewInternalPort>
! 24: <p:NewInternalClient>192.168.1.137</p:NewInternalClient>
! 25: <p:NewEnabled>1</p:NewEnabled>
! 26: <p:NewDescription>dooom</p:NewDescription>
! 27: <p:NewLeaseTime>345</p:NewLeaseTime>
! 28: </p:PortMappingEntry>
! 29: */
! 30: typedef enum { PortMappingEltNone,
! 31: PortMappingEntry, NewRemoteHost,
! 32: NewExternalPort, NewProtocol,
! 33: NewInternalPort, NewInternalClient,
! 34: NewEnabled, NewDescription,
! 35: NewLeaseTime } portMappingElt;
! 36:
! 37: struct PortMapping {
! 38: struct PortMapping * l_next; /* list next element */
! 39: UNSIGNED_INTEGER leaseTime;
! 40: unsigned short externalPort;
! 41: unsigned short internalPort;
! 42: char remoteHost[64];
! 43: char internalClient[64];
! 44: char description[64];
! 45: char protocol[4];
! 46: unsigned char enabled;
! 47: };
! 48:
! 49: struct PortMappingParserData {
! 50: struct PortMapping * l_head; /* list head */
! 51: portMappingElt curelt;
! 52: };
! 53:
! 54: MINIUPNP_LIBSPEC void
! 55: ParsePortListing(const char * buffer, int bufsize,
! 56: struct PortMappingParserData * pdata);
! 57:
! 58: MINIUPNP_LIBSPEC void
! 59: FreePortListing(struct PortMappingParserData * pdata);
! 60:
! 61: #ifdef __cplusplus
! 62: }
! 63: #endif
! 64:
! 65: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>