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>