Annotation of embedaddon/miniupnpc/testminixml.c, revision 1.1

1.1     ! misho       1: /* $Id: testminixml.c,v 1.6 2006/11/19 22:32:35 nanard Exp $
        !             2:  * testminixml.c
        !             3:  * test program for the "minixml" functions.
        !             4:  * Author : Thomas Bernard.
        !             5:  */
        !             6: #include <stdlib.h>
        !             7: #include <stdio.h>
        !             8: #include <string.h>
        !             9: #include "minixml.h"
        !            10: #include "igd_desc_parse.h"
        !            11: 
        !            12: #ifdef WIN32
        !            13: #define NO_BZERO
        !            14: #endif
        !            15: 
        !            16: #ifdef NO_BZERO
        !            17: #define bzero(p, n) memset(p, 0, n)
        !            18: #endif
        !            19: 
        !            20: /* ---------------------------------------------------------------------- */
        !            21: void printeltname1(void * d, const char * name, int l)
        !            22: {
        !            23:        int i;
        !            24:        printf("element ");
        !            25:        for(i=0;i<l;i++)
        !            26:                putchar(name[i]);
        !            27: }
        !            28: void printeltname2(void * d, const char * name, int l)
        !            29: {
        !            30:        int i;
        !            31:        putchar('/');
        !            32:        for(i=0;i<l;i++)
        !            33:                putchar(name[i]);
        !            34:        putchar('\n');
        !            35: }
        !            36: void printdata(void *d, const char * data, int l)
        !            37: {
        !            38:        int i;
        !            39:        printf("data : ");
        !            40:        for(i=0;i<l;i++)
        !            41:                putchar(data[i]);
        !            42:        putchar('\n');
        !            43: }
        !            44: 
        !            45: void burptest(const char * buffer, int bufsize)
        !            46: {
        !            47:        struct IGDdatas data;
        !            48:        struct xmlparser parser;
        !            49:        /*objet IGDdatas */
        !            50:        bzero(&data, sizeof(struct IGDdatas));
        !            51:        /* objet xmlparser */
        !            52:        parser.xmlstart = buffer;
        !            53:        parser.xmlsize = bufsize;
        !            54:        parser.data = &data;
        !            55:        /*parser.starteltfunc = printeltname1;
        !            56:        parser.endeltfunc = printeltname2;
        !            57:        parser.datafunc = printdata; */
        !            58:        parser.starteltfunc = IGDstartelt;
        !            59:        parser.endeltfunc = IGDendelt;
        !            60:        parser.datafunc = IGDdata; 
        !            61:        parsexml(&parser);
        !            62:        printIGD(&data);
        !            63: }
        !            64: 
        !            65: /* ----- main ---- */
        !            66: #define XML_MAX_SIZE (8192)
        !            67: int main(int argc, char * * argv)
        !            68: {
        !            69:        FILE * f;
        !            70:        char buffer[XML_MAX_SIZE];
        !            71:        int bufsize;
        !            72:        if(argc<2)
        !            73:        {
        !            74:                printf("usage:\t%s file.xml\n", argv[0]);
        !            75:                return 1;
        !            76:        }
        !            77:        f = fopen(argv[1], "r");
        !            78:        if(!f)
        !            79:        {
        !            80:                printf("cannot open file %s\n", argv[1]);
        !            81:                return 1;
        !            82:        }
        !            83:        bufsize = (int)fread(buffer, 1, XML_MAX_SIZE, f);
        !            84:        fclose(f);
        !            85:        burptest(buffer, bufsize);
        !            86:        return 0;
        !            87: }
        !            88: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>