Diff for /libaitwww/inc/aitwww.h between versions 1.1.1.1.2.2 and 1.5.4.1

version 1.1.1.1.2.2, 2012/03/09 12:33:41 version 1.5.4.1, 2013/01/17 14:07:19
Line 12  terms: Line 12  terms:
 All of the documentation and software included in the ELWIX and AITNET  All of the documentation and software included in the ELWIX and AITNET
 Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>  Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>
   
Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
         by Michael Pounov <misho@elwix.org>.  All rights reserved.          by Michael Pounov <misho@elwix.org>.  All rights reserved.
   
 Redistribution and use in source and binary forms, with or without  Redistribution and use in source and binary forms, with or without
Line 50  SUCH DAMAGE. Line 50  SUCH DAMAGE.
 #include <sys/types.h>  #include <sys/types.h>
 #include <sys/queue.h>  #include <sys/queue.h>
 #include <sys/uio.h>  #include <sys/uio.h>
   #include <elwix.h>
   
   
   /* URL staff ... */
   
   typedef struct _tagURLItem {
           int     vallen;
           char    *value;
   } url_Item_t;
   
   struct tagIOURL {
           ait_val_t       url_line;
   
           ait_val_t       url_tech;
           ait_val_t       url_user;
           ait_val_t       url_pass;
           ait_val_t       url_host;
           ait_val_t       url_port;
           ait_val_t       url_path;
           ait_val_t       url_args;
   
           unsigned char   *url_reserved;
   };
   
   struct tagReqXML {
           unsigned char   xml_line[BUFSIZ];
   
           url_Item_t      xml_namespace;
           union {
                   url_Item_t      container;
                   url_Item_t      path;
           }               xml_node;
           url_Item_t      xml_data;
           url_Item_t      xml_attribute;
           url_Item_t      xml_value;
   };
   
   /* CGI variables */
   
 struct tagCGI {  struct tagCGI {
        char                    *cgi_name;        ait_val_t                *cgi_name;
        char                    *cgi_value;        ait_val_t                *cgi_value;
   
         SLIST_ENTRY(tagCGI)     cgi_node;          SLIST_ENTRY(tagCGI)     cgi_node;
 };  };
Line 97  cgi_t *www_initCGI(void); Line 134  cgi_t *www_initCGI(void);
  * return: none   * return: none
  */   */
 void www_closeCGI(cgi_t ** __restrict cgi);  void www_closeCGI(cgi_t ** __restrict cgi);
   #define www_freeAttributes      www_closeCGI
 /*  /*
  * www_parseQuery() - Parse CGI query string   * www_parseQuery() - Parse CGI query string
  *   *
Line 164  inline int www_header(FILE *output); Line 202  inline int www_header(FILE *output);
  */   */
 inline cgi_t *www_parseAttributes(const char **ct);  inline cgi_t *www_parseAttributes(const char **ct);
 /*  /*
 * www_freeAttributes() - Free attributes * www_getAttribute() - Get Attribute from attribute session
  *   *
 * @attr = Attributes * @cgi = Inited attribute session
  * @name = Name of attribute variable
  * return: NULL not found or !=NULL value
  */
 inline ait_val_t *www_getAttribute(cgi_t * __restrict cgi, const char *name);
 
 
 /*
  * www_cmp() - Compare two string
  *
  * @ct = content text from www
  * @s = string
  * return: 0 are equal or !0 are different
  */
 int www_cmp(const char *ct, const char *s);
 /*
  * www_cmptype() - Compare context type
  *
  * @ct = content text from www
  * @type = content type
  * return: 0 are equal or !0 are different
  */
 int www_cmptype(const char *ct, const char *type);
 /*
  * www_getpair() - Get AV pair from WWW query string
  *
  * @str = query string
  * @delim = delimiter
  * return: NULL error or AV pair, must be e_free() after use!
  */
 ait_val_t *www_getpair(char ** __restrict str, const char *delim);
 /*
  * www_x2c() - Hex from string to digit
  *
  * @str = string
  * return: digit
  */
 inline char www_x2c(const char *str);
 /*
  * www_unescape() - Unescape/decode WWW query string to host string
  *
  * @str = string
  * return: none   * return: none
  */   */
inline void www_freeAttributes(cgi_t ** __restrict attr);inline void www_unescape(char * __restrict str);
 /*  /*
 * www_getAttribute() - Get attribute by name * www_undot() - Undotted and clean WWW query filename
  *   *
 * @attr = Attributes * @pname = query filename
 * @name = Name of attribute * return: =NULL error or !=NULL allocated valid filename, after use you must call ait_freeVar()
 * return: NULL not found or !=NULL attribute value 
  */   */
inline const char *www_getAttribute(cgi_t * __restrict attr, const char *name);ait_val_t *www_undot(const char * __restrict pname);
 
 
 /*
  * www_URLInit() - Init URL structure and free old one
  *
  * @url = Input URL
  * return: -1 error or 0 ok
  */
 inline int www_URLInit(struct tagIOURL * __restrict url);
 /*
  * www_URLFree() - URL free structure
  *
  * @url = Input parsed URL
  * return: none
  */
 inline void www_URLFree(struct tagIOURL * __restrict url);
 /*
  * www_URLGet() - Parse and get data from input URL
  *
  * @csURL = Input URL line
  * @url = Output parsed URL
  * return: 0 error format not find tech:// and return URL like path; 
  *              -1 error:: can`t read; >0 ok, up bits for known elements
  */
 int www_URLGet(const char *csURL, struct tagIOURL * __restrict url);
 /*
  * www_URLGetFile() - Get file from parsed URL
  *
  * @url = Input parsed URL
  * @value = Return filename, if not specified file in url path, replace with /
  * return: -1 error, 0 filename from path, 1 filename or 2 not specified filename
  */
 int www_URLGetFile(struct tagIOURL * __restrict url, ait_val_t * __restrict value);
 
 /*
  * www_XMLGet() - Parse and get data from input XML request string 
  *                              [ns:]container[|attribute[=value]][?data]
  *
  * @csXML = Input XML request line
  * @xml = Output parsed XML request
  * return: 0 error format incorrect, -1 error:: can`t read; >0 ok readed elements bits
  */
 int www_XMLGet(const char *csXML, struct tagReqXML *xml);
 
 /*
  * www_b64encode() - Base64 encode function
  *
  * @src = source data
  * return: NULL error or !=NULL encoded variable, after use call ait_freeVar()
  */
 ait_val_t *www_b64encode(ait_val_t * __restrict src);
 /*
  * www_b64decode() - Base64 decode function
  *
  * @src = source encoded data
  * return: NULL error or !=NULL decoded variable, after use call ait_freeVar()
  */
 ait_val_t *www_b64decode(ait_val_t * __restrict src);
   
   
 #endif  #endif

Removed from v.1.1.1.1.2.2  
changed lines
  Added in v.1.5.4.1


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