Annotation of libaitwww/example/test.c, revision 1.1.2.5
1.1.2.1 misho 1: #include <stdio.h>
2: #include <stdlib.h>
3: #include <aitwww.h>
4:
5:
1.1.2.4 misho 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);
1.1.2.5 ! misho 13: printf("name=%s value=%s\n", c->cgi_name, c->cgi_value);
1.1.2.4 misho 14: return 0;
15: }
16:
17:
1.1.2.1 misho 18: int
1.1.2.4 misho 19: main(int argc, char **argv)
1.1.2.1 misho 20: {
1.1.2.2 misho 21: int ret;
22: cgi_t *cgi, *cgi1;
1.1.2.1 misho 23:
1.1.2.4 misho 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"));
1.1.2.5 ! misho 36:
1.1.2.4 misho 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."));
1.1.2.1 misho 46:
1.1.2.2 misho 47: www_closeCGI(&cgi);
48:
1.1.2.4 misho 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 {
1.1.2.5 ! misho 59: /* POST test */
1.1.2.4 misho 60: putenv("REQUEST_METHOD=POST");
61: putenv("CONTENT_LENGTH=1000");
1.1.2.5 ! misho 62: if (!strcmp(argv[1], "multi"))
! 63: putenv("CONTENT_TYPE=multipart/form-data");
! 64: else
! 65: putenv("CONTENT_TYPE=application/x-www-form-urlencoded");
! 66:
1.1.2.4 misho 67: cgi = www_initCGI();
68: if (!cgi) {
69: printf("Error:: #%d - %s\n", www_GetErrno(), www_GetError());
70: return 1;
71: }
1.1.2.2 misho 72:
1.1.2.4 misho 73: printf("blah=%s\n", www_getValue(cgi, "blah"));
1.1.2.1 misho 74:
1.1.2.4 misho 75: printf("num pairs=%d\n", www_listPairs(cgi, showPair, argv[1]));
1.1.2.2 misho 76:
1.1.2.4 misho 77: www_closeCGI(&cgi);
78: }
1.1.2.1 misho 79: return 0;
80: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>