Annotation of embedaddon/miniupnpd/testupnpdescgen.c, revision 1.1
1.1 ! misho 1: /* $Id: testupnpdescgen.c,v 1.18 2008/07/10 09:18:34 nanard Exp $ */
! 2: /* MiniUPnP project
! 3: * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
! 4: * (c) 2006-2008 Thomas Bernard
! 5: * This software is subject to the conditions detailed
! 6: * in the LICENCE file provided within the distribution */
! 7:
! 8: #include <stdlib.h>
! 9: #include <stdio.h>
! 10: #include <string.h>
! 11:
! 12: #include "config.h"
! 13: #include "upnpdescgen.h"
! 14:
! 15: char uuidvalue[] = "uuid:12345678-0000-0000-0000-00000000abcd";
! 16: char serialnumber[] = "12345678";
! 17: char modelnumber[] = "1";
! 18: char presentationurl[] = "http://192.168.0.1:8080/";
! 19:
! 20: char * use_ext_ip_addr = NULL;
! 21: const char * ext_if_name = "eth0";
! 22:
! 23: int getifaddr(const char * ifname, char * buf, int len)
! 24: {
! 25: strncpy(buf, "1.2.3.4", len);
! 26: return 0;
! 27: }
! 28:
! 29: int upnp_get_portmapping_number_of_entries()
! 30: {
! 31: return 42;
! 32: }
! 33:
! 34: /* To be improved */
! 35: int
! 36: xml_pretty_print(const char * s, int len, FILE * f)
! 37: {
! 38: int n = 0, i;
! 39: int elt_close = 0;
! 40: int c, indent = 0;
! 41: while(len > 0)
! 42: {
! 43: c = *(s++); len--;
! 44: switch(c)
! 45: {
! 46: case '<':
! 47: if(len>0 && *s == '/')
! 48: elt_close++;
! 49: else if(len>0 && *s == '?')
! 50: elt_close = 1;
! 51: else
! 52: elt_close = 0;
! 53: if(elt_close!=1)
! 54: {
! 55: if(elt_close > 1)
! 56: indent--;
! 57: fputc('\n', f); n++;
! 58: for(i=indent; i>0; i--)
! 59: fputc(' ', f);
! 60: n += indent;
! 61: }
! 62: fputc(c, f); n++;
! 63: break;
! 64: case '>':
! 65: fputc(c, f); n++;
! 66: if(elt_close==1)
! 67: {
! 68: /*fputc('\n', f); n++; */
! 69: //elt_close = 0;
! 70: if(indent > 0)
! 71: indent--;
! 72: }
! 73: else if(elt_close == 0)
! 74: indent++;
! 75: break;
! 76: default:
! 77: fputc(c, f); n++;
! 78: }
! 79: }
! 80: return n;
! 81: }
! 82:
! 83: /* stupid test */
! 84: const char * str1 = "Prefix123String";
! 85: const char * str2 = "123String";
! 86:
! 87: void stupid_test()
! 88: {
! 89: printf("str1:'%s' str2:'%s'\n", str1, str2);
! 90: printf("str1:%p str2:%p str2-str1:%ld\n", str1, str2, (long)(str2-str1));
! 91: }
! 92:
! 93: /* main */
! 94:
! 95: int
! 96: main(int argc, char * * argv)
! 97: {
! 98: char * rootDesc;
! 99: int rootDescLen;
! 100: char * s;
! 101: int l;
! 102: rootDesc = genRootDesc(&rootDescLen);
! 103: xml_pretty_print(rootDesc, rootDescLen, stdout);
! 104: free(rootDesc);
! 105: printf("\n-------------\n");
! 106: s = genWANIPCn(&l);
! 107: xml_pretty_print(s, l, stdout);
! 108: free(s);
! 109: printf("\n-------------\n");
! 110: s = genWANCfg(&l);
! 111: xml_pretty_print(s, l, stdout);
! 112: free(s);
! 113: printf("\n-------------\n");
! 114: #ifdef ENABLE_L3F_SERVICE
! 115: s = genL3F(&l);
! 116: xml_pretty_print(s, l, stdout);
! 117: free(s);
! 118: printf("\n-------------\n");
! 119: #endif
! 120: #ifdef ENABLE_EVENTS
! 121: s = getVarsWANIPCn(&l);
! 122: xml_pretty_print(s, l, stdout);
! 123: free(s);
! 124: printf("\n-------------\n");
! 125: s = getVarsWANCfg(&l);
! 126: xml_pretty_print(s, l, stdout);
! 127: free(s);
! 128: printf("\n-------------\n");
! 129: #ifdef ENABLE_L3F_SERVICE
! 130: s = getVarsL3F(&l);
! 131: xml_pretty_print(s, l, stdout);
! 132: free(s);
! 133: printf("\n-------------\n");
! 134: #endif
! 135: #endif
! 136: /*
! 137: stupid_test();
! 138: */
! 139: return 0;
! 140: }
! 141:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>