Annotation of embedaddon/miniupnpc/testigddescparse.c, revision 1.1
1.1 ! misho 1: /* $Id: testigddescparse.c,v 1.2 2009/12/03 13:50:06 nanard Exp $ */
! 2: /* Project : miniupnp
! 3: * http://miniupnp.free.fr/
! 4: * Author : Thomas Bernard
! 5: * Copyright (c) 2008-2009 Thomas Bernard
! 6: * This software is subject to the conditions detailed in the
! 7: * LICENCE file provided in this distribution.
! 8: * */
! 9: #include <stdio.h>
! 10: #include <stdlib.h>
! 11: #include <string.h>
! 12: #include "igd_desc_parse.h"
! 13: #include "minixml.h"
! 14: #include "miniupnpc.h"
! 15:
! 16: int test_igd_desc_parse(char * buffer, int len)
! 17: {
! 18: struct IGDdatas igd;
! 19: struct xmlparser parser;
! 20: struct UPNPUrls urls;
! 21: memset(&igd, 0, sizeof(struct IGDdatas));
! 22: memset(&parser, 0, sizeof(struct xmlparser));
! 23: parser.xmlstart = buffer;
! 24: parser.xmlsize = len;
! 25: parser.data = &igd;
! 26: parser.starteltfunc = IGDstartelt;
! 27: parser.endeltfunc = IGDendelt;
! 28: parser.datafunc = IGDdata;
! 29: parsexml(&parser);
! 30: printIGD(&igd);
! 31: GetUPNPUrls(&urls, &igd, "http://fake/desc/url/file.xml");
! 32: printf("ipcondescURL='%s'\n", urls.ipcondescURL);
! 33: printf("controlURL='%s'\n", urls.controlURL);
! 34: printf("controlURL_CIF='%s'\n", urls.controlURL_CIF);
! 35: FreeUPNPUrls(&urls);
! 36: return 0;
! 37: }
! 38:
! 39: int main(int argc, char * * argv)
! 40: {
! 41: FILE * f;
! 42: char * buffer;
! 43: int len;
! 44: int r = 0;
! 45: if(argc<2) {
! 46: fprintf(stderr, "Usage: %s file.xml\n", argv[0]);
! 47: return 1;
! 48: }
! 49: f = fopen(argv[1], "r");
! 50: if(!f) {
! 51: fprintf(stderr, "Cannot open %s for reading.\n", argv[1]);
! 52: return 1;
! 53: }
! 54: fseek(f, 0, SEEK_END);
! 55: len = ftell(f);
! 56: fseek(f, 0, SEEK_SET);
! 57: buffer = malloc(len);
! 58: fread(buffer, 1, len, f);
! 59: fclose(f);
! 60: r = test_igd_desc_parse(buffer, len);
! 61: free(buffer);
! 62: return r;
! 63: }
! 64:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>