Annotation of libaitwww/example/test.c, revision 1.2

1.2     ! misho       1: #include <stdio.h>
        !             2: #include <stdlib.h>
        !             3: #include <aitwww.h>
        !             4: 
        !             5: 
        !             6: static int
        !             7: showPair(struct tagCGI *c, void *arg)
        !             8: {
        !             9:        if (arg)
        !            10:                printf("ARG=%s ... ", arg);
        !            11: 
        !            12:        printf("next=%p ... ", c->cgi_node.sle_next);
        !            13:        printf("name=%s value=%s\n", c->cgi_name, c->cgi_value);
        !            14:        return 0;
        !            15: }
        !            16: 
        !            17: 
        !            18: int
        !            19: main(int argc, char **argv)
        !            20: {
        !            21:        int ret;
        !            22:        cgi_t *cgi, *cgi1;
        !            23: 
        !            24:        if (argc < 2) {
        !            25:                /* GET test */
        !            26:                putenv("QUERY_STRING=test1=abra+kadabra&testche=piuk%20mdaa");
        !            27:                putenv("CONENT_LENGTH=390");
        !            28:                putenv("REQUEST_METHOD=GET");
        !            29:                cgi = www_initCGI();
        !            30:                if (!cgi) {
        !            31:                        printf("Error:: #%d - %s\n", www_GetErrno(), www_GetError());
        !            32:                        return 1;
        !            33:                }
        !            34: 
        !            35:                printf("%s\n%s\n", www_getValue(cgi, "testche"), www_getValue(cgi, "test1"));
        !            36: 
        !            37:                cgi1 = www_parseQuery("blahA=this is a string&blahB=this is another string");
        !            38:                if (!cgi1) {
        !            39:                        printf("Error:: #%d - %s\n", www_GetErrno(), www_GetError());
        !            40:                        www_closeCGI(&cgi);
        !            41:                        return 2;
        !            42:                }
        !            43:                printf("\n%s\n%s\n", www_getValue(cgi1, "blahA"), www_getValue(cgi1, "blahB"));
        !            44: 
        !            45:                printf("cgi num pairs=%d\n", www_listPairs(cgi, showPair, ".oOo."));
        !            46: 
        !            47:                www_closeCGI(&cgi);
        !            48: 
        !            49:                www_addValue(cgi1, "oho", "boho");
        !            50:                printf("\n%s\n", www_getValue(cgi1, "oho"));
        !            51:                www_delPair(cgi1, "oho");
        !            52:                printf("\n%s\n", www_getValue(cgi1, "oho"));
        !            53:                www_delPair(cgi1, "oho");
        !            54: 
        !            55:                printf("cgi1 num pairs=%d\n", www_listPairs(cgi1, showPair, NULL));
        !            56: 
        !            57:                www_closeCGI(&cgi1);
        !            58:        } else {
        !            59:                /* POST test */
        !            60:                putenv("REQUEST_METHOD=POST");
        !            61:                putenv("CONTENT_LENGTH=1000");
        !            62:                if (!strcmp(argv[1], "multi"))
        !            63:                        putenv("CONTENT_TYPE=multipart/form-data; boundary=012345678909876543210");
        !            64:                else
        !            65:                        putenv("CONTENT_TYPE=application/x-www-form-urlencoded");
        !            66: 
        !            67:                cgi = www_initCGI();
        !            68:                if (!cgi) {
        !            69:                        printf("Error:: #%d - %s\n", www_GetErrno(), www_GetError());
        !            70:                        return 1;
        !            71:                }
        !            72: 
        !            73:                printf("blah=%s\n", www_getValue(cgi, "blah"));
        !            74: 
        !            75:                printf("num pairs=%d\n", www_listPairs(cgi, showPair, argv[1]));
        !            76: 
        !            77:                www_closeCGI(&cgi);
        !            78:        }
        !            79:        return 0;
        !            80: }

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