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>