1 /* $Id$ */ 2 3 #ifndef _AREALIST_H 4 #define _AREALIST_H 5 6 #include "fidoconf.h" 7 8 typedef struct arealisttiem { 9 int active; 10 int rescanable; 11 int readonly; 12 int writeonly; 13 int fullaccess; 14 int mandatory; 15 char *tag; 16 char *grp; 17 char *desc; 18 } s_arealistitem, *ps_arealistitem; 19 20 typedef struct arealist { 21 int count; 22 int maxcount; 23 ps_arealistitem areas; 24 } s_arealist, *ps_arealist; 25 26 HUSKYEXT ps_arealist newAreaList(s_fidoconfig *cfg); 27 HUSKYEXT void freeAreaList(ps_arealist al); 28 HUSKYEXT int addAreaListItem(ps_arealist al, int active, int rescanable, int import, int aexport, int mandatory, char *tag, char *desc, char *grp); 29 HUSKYEXT void sortAreaList(ps_arealist al); 30 HUSKYEXT void sortAreaListNoDupes(unsigned int halcnt, ps_arealist *hal, int nodupes); 31 HUSKYEXT char *formatAreaList(ps_arealist al, int maxlen, char *activechars, int grps); 32 33 #endif 34