00001 /* $Id: igd_desc_parse.h,v 1.6 2008/04/23 11:51:07 nanard Exp $ */ 00002 /* Project : miniupnp 00003 * http://miniupnp.free.fr/ 00004 * Author : Thomas Bernard 00005 * Copyright (c) 2005-2008 Thomas Bernard 00006 * This software is subject to the conditions detailed in the 00007 * LICENCE file provided in this distribution. 00008 * */ 00009 #ifndef __IGD_DESC_PARSE_H__ 00010 #define __IGD_DESC_PARSE_H__ 00011 00012 /* Structure to store the result of the parsing of UPnP 00013 * descriptions of Internet Gateway Devices */ 00014 #define MINIUPNPC_URL_MAXSIZE (128) 00015 struct IGDdatas { 00016 char cureltname[MINIUPNPC_URL_MAXSIZE]; 00017 char urlbase[MINIUPNPC_URL_MAXSIZE]; 00018 int level; 00019 /*int state;*/ 00020 /* "urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1" */ 00021 char controlurl_CIF[MINIUPNPC_URL_MAXSIZE]; 00022 char eventsuburl_CIF[MINIUPNPC_URL_MAXSIZE]; 00023 char scpdurl_CIF[MINIUPNPC_URL_MAXSIZE]; 00024 char servicetype_CIF[MINIUPNPC_URL_MAXSIZE]; 00025 /*char devicetype_CIF[MINIUPNPC_URL_MAXSIZE];*/ 00026 /* "urn:schemas-upnp-org:service:WANIPConnection:1" 00027 * "urn:schemas-upnp-org:service:WANPPPConnection:1" */ 00028 char controlurl[MINIUPNPC_URL_MAXSIZE]; 00029 char eventsuburl[MINIUPNPC_URL_MAXSIZE]; 00030 char scpdurl[MINIUPNPC_URL_MAXSIZE]; 00031 char servicetype[MINIUPNPC_URL_MAXSIZE]; 00032 /*char devicetype[MINIUPNPC_URL_MAXSIZE];*/ 00033 /* tmp */ 00034 char controlurl_tmp[MINIUPNPC_URL_MAXSIZE]; 00035 char eventsuburl_tmp[MINIUPNPC_URL_MAXSIZE]; 00036 char scpdurl_tmp[MINIUPNPC_URL_MAXSIZE]; 00037 char servicetype_tmp[MINIUPNPC_URL_MAXSIZE]; 00038 /*char devicetype_tmp[MINIUPNPC_URL_MAXSIZE];*/ 00039 }; 00040 00041 void IGDstartelt(void *, const char *, int); 00042 void IGDendelt(void *, const char *, int); 00043 void IGDdata(void *, const char *, int); 00044 void printIGD(struct IGDdatas *); 00045 00046 #endif 00047