Diff for /libaitcfg/inc/aitcfg.h between versions 1.1 and 1.4

version 1.1, 2008/08/28 13:17:41 version 1.4, 2010/03/22 14:53:49
Line 1 Line 1
   /*************************************************************************
   * (C) 2008 AITNET ltd - Sofia/Bulgaria - <misho@aitbg.com>
   *  by Michael Pounov <misho@openbsd-bg.org>
   *
   * $Author$
   * $Id$
   *
   *************************************************************************/
 #ifndef __AITCFG_H  #ifndef __AITCFG_H
 #define __AITCFG_H  #define __AITCFG_H
   
Line 17  typedef struct tagHead sl_config; Line 25  typedef struct tagHead sl_config;
   
   
 /*  /*
    * Macros for config library. Typecast string to specific config string format.
   */
   #define CFG(x)          (unsigned char *)(x)
   
   #define CFG_ISSET(x)    ((long) cfg_FirstItem((x)))
   
   
   /*
  * InitConfig() Head initializing function for config   * InitConfig() Head initializing function for config
  * @cfg = New head element for init   * @cfg = New head element for init
  * return: 0 ok; -1 error:: new head element is null   * return: 0 ok; -1 error:: new head element is null
 */  */
 inline int InitConfig(sl_config * __restrict cfg);  inline int InitConfig(sl_config * __restrict cfg);
 /*  /*
    * cfg_CreateConfig() Create config file from memory without whitespaces!
    * @csConfigName = New config filename
    * @cfg = Head list element
    * return: 0 ok; -1 error:: can`t save new config
   */
   int cfg_CreateConfig(const char *csConfigName, sl_config * __restrict cfg);
   /*
  * CreateConfig() Create config file from memory   * CreateConfig() Create config file from memory
  * @csConfigName = New config filename   * @csConfigName = New config filename
  * @cfg = Head list element   * @cfg = Head list element
Line 64  int ReadConfig(FILE *f, sl_config * __restrict cfg); Line 87  int ReadConfig(FILE *f, sl_config * __restrict cfg);
 */  */
 int WriteConfig(FILE *f, sl_config * __restrict cfg);  int WriteConfig(FILE *f, sl_config * __restrict cfg);
   
   /*
    * cfg_WriteConfig() Write to file from items in config list without whitespaces!
    * @f = file resource
    * @cfg = Head list element
    * return: 0 ok; -1 error:: can`t write to file
   */
   int cfg_WriteConfig(FILE *f, sl_config * __restrict cfg);
   
 /*  /*
    * ConcatConfig() Concat two list in one
    * @cfg = Head list element of main list
    * @add_cfg = Head list element of added list
    * return: 0 ok; -1 error:: can`t concat lists
   */
   int ConcatConfig(sl_config * __restrict cfg, sl_config * __restrict add_cfg);
   
   /*
    * MergeConfig() Marge two list in one cfg and destroy add_cfg
    * @cfg = Head list element of main list
    * @add_cfg = Head list element of merged list (destroy after all!)
    * return: 0 ok; -1 error:: can`t merge lists
   */
   int MergeConfig(sl_config * __restrict cfg, sl_config * __restrict add_cfg);
   
   
   /*
  * cfg_FindAttribute() Find attribute position in config list   * cfg_FindAttribute() Find attribute position in config list
  * @cfg = Head list element   * @cfg = Head list element
  * @csSec = Config section //[{csSec}]   * @csSec = Config section //[{csSec}]
Line 98  int cfg_UnsetAttribute(sl_config * __restrict cfg, con Line 145  int cfg_UnsetAttribute(sl_config * __restrict cfg, con
  * return: NULL item not found or null parameters; !=NULL value const string   * return: NULL item not found or null parameters; !=NULL value const string
 */  */
 inline const u_char *cfg_GetAttribute(sl_config * __restrict cfg, const u_char *csSec, const u_char *csAttr);  inline const u_char *cfg_GetAttribute(sl_config * __restrict cfg, const u_char *csSec, const u_char *csAttr);
   
   /*
    * cfg_FirstItem() Get first item from config list and return his value
    * @cfg = Head list element
    * return: NULL if no items in list; !=NULL first pair item
   */
   inline struct tagPair *cfg_FirstItem(sl_config * __restrict cfg);
   
 /*  /*
  * cfg_LoadAttribute() Extended get attribute, if not found item return *default value*   * cfg_LoadAttribute() Extended get attribute, if not found item return *default value*

Removed from v.1.1  
changed lines
  Added in v.1.4


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