Category : BBS Programs+Doors
Archive   : CINCLUDE.ZIP
Filename : USER.H

 
Output of file : USER.H contained in archive : CINCLUDE.ZIP
/*
** This is the structure definition(s) for the USER.BBS file. This
** file is used/modified by the SL-BBS itself.
**
** At the beginning, you will find a series of small structure
** definitions. These are used in the actual USER structure.
**
** At the end, you will find a small function named "xstrings". This
** function will translate the Pascal strings into C strings.
**
** All structure fields (with the exception of the strings) are C
** compatable. The only "surprise" for you will be in the first records
** in the file. The first record is a dummy record.
**
** Good luck and let me know if you have any questions or comments
** regarding the layout of this file.
**
** J. D. Berg
** SysOp of "IceBerg Gateway BBS"
** 415-829-3309
** Dublin, Ca 94550
*/




struct DATE {
unsigned char year;
unsigned char month;
unsigned char day;
};


struct TIME {
unsigned char hour;
unsigned char min;
};


struct INT3 {
unsigned int low;
unsigned char hi;
};


struct USER {
char name[26]; /* user name */
char loc[21]; /* user location */
unsigned char password[3]; /* hash of password */
unsigned char chksum; /* chksum of name */
struct DATE firston; /* date of first call */
struct DATE laston; /* date of last call */
struct INT3 calls; /* # of calls */
char systype[16]; /* type of system */
char phoneno[13]; /* phone # */
struct TIME lastcall; /* time of last call */
unsigned char xproto; /* default file xfer protocol */
unsigned char ratio; /* u/dload ratio */
unsigned char logmail; /* mail logging flag */
unsigned char scrnsize; /* screen size */
unsigned char help; /* help level */
unsigned char ansitype; /* default ANSI mode */
unsigned char timeleft; /* time left today */
char extra[2]; /* unused */
unsigned char access; /* BBS access level */
unsigned char faccess; /* file system access level */
unsigned char access2; /* not used */
unsigned char timelimit; /* daily time limit in minutes */
unsigned int uploads; /* Kbytes uploaded */
unsigned int downloads; /* Kbytes downloaded */
unsigned int firstmsg; /* pntr to 1st msg in mailbox */
unsigned int lastmsg; /* pntr to last msg in mailbox */
unsigned int lastread[24]; /* sub-brd last msg read pntr's */
unsigned char submask[4]; /* visible sub-brd's mask */
unsigned char subset[4]; /* available sub-brd's mask */
unsigned int extend; /* unused */
int parent; /* pntr to parent node */
int left, right; /* pntr's to child nodes */
};






/*
** This function returns a char pntr that points to a C compatable string
** (NULL terminated), converted from the incoming Pascal string.
*/
static char *xstring (str)

char str[];

{
static char buf[257];



if (str[0] == 0)
strcpy (buf, "");
else
{
memcpy (buf, &str[1], str[0] & 0x00FF);
buf [str[0] & 0x00FF] = '\0';
}

return (buf);
}



  3 Responses to “Category : BBS Programs+Doors
Archive   : CINCLUDE.ZIP
Filename : USER.H

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/