Commit d2f969b8 authored by Rob Swindell's avatar Rob Swindell 💬

Merge branch 'c_dependency_refactor' into 'master'

C dependency refactor: limit use/dependency-on sbbs.h

See merge request sbbs/sbbs!36
parents 5168429f c6808b3f
Pipeline #767 passed with stage
in 16 minutes and 25 seconds
/* Program to add files to a Synchronet file database */
/* $Id: addfiles.c,v 1.63 2020/08/17 00:48:27 rswindell Exp $ */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
......@@ -15,26 +13,21 @@
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* Anonymous FTP access to the most recent released source is available at *
* ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net *
* *
* Anonymous CVS access to the development source and modification history *
* is available at cvs.synchro.net:/cvsroot/sbbs, example: *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs login *
* (just hit return, no password is necessary) *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs checkout src *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* You are encouraged to submit any modifications (preferably in Unix diff *
* format) via e-mail to mods@synchro.net *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#include "sbbs.h"
#include "nopen.h"
#include "str_util.h"
#include "datewrap.h"
#include "date_str.h"
#include "userdat.h"
#include "filedat.h"
#include "load_cfg.h"
#include <stdbool.h>
#include <stdarg.h>
#define ADDFILES_VER "3.04"
......@@ -600,7 +593,7 @@ void synclist(char *inpath, int dirnum)
printf("ERR_ALLOC %s\n",str);
return;
}
if(lread(file,ixbbuf,length)!=length) {
if(read(file,ixbbuf,length)!=length) {
close(file);
free((char *)ixbbuf);
printf("ERR_READ %s\n",str);
......
/* $Id: allusers.c,v 1.7 2018/02/20 11:56:26 rswindell Exp $ */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
......@@ -13,21 +11,9 @@
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* Anonymous FTP access to the most recent released source is available at *
* ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net *
* *
* Anonymous CVS access to the development source and modification history *
* is available at cvs.synchro.net:/cvsroot/sbbs, example: *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs login *
* (just hit return, no password is necessary) *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs checkout src *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* You are encouraged to submit any modifications (preferably in Unix diff *
* format) via e-mail to mods@synchro.net *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
......@@ -37,7 +23,8 @@
#include <stdlib.h>
#include <sys/stat.h>
#include "sbbs.h"
#include "sbbsdefs.h"
#include "str_util.h"
int min=0,max=99;
long reqflags[4]={0},reqrest=0,reqexempt=0;
......
/* ars.c */
/* Synchronet Access Requirement String (ARS) functions */
/* $Id: ars.c,v 1.24 2020/05/14 07:49:58 rswindell Exp $ */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
......@@ -17,25 +13,13 @@
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* Anonymous FTP access to the most recent released source is available at *
* ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net *
* *
* Anonymous CVS access to the development source and modification history *
* is available at cvs.synchro.net:/cvsroot/sbbs, example: *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs login *
* (just hit return, no password is necessary) *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs checkout src *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* You are encouraged to submit any modifications (preferably in Unix diff *
* format) via e-mail to mods@synchro.net *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#include "sbbs.h"
#include "ars_defs.h"
static BOOL ar_string_arg(int artype)
{
......
/* dat_rec.c */
/* Synchronet text data-related routines (exported) */
/* $Id: dat_rec.c,v 1.3 2018/02/20 11:56:26 rswindell Exp $ */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
......@@ -17,25 +13,15 @@
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* Anonymous FTP access to the most recent released source is available at *
* ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net *
* *
* Anonymous CVS access to the development source and modification history *
* is available at cvs.synchro.net:/cvsroot/sbbs, example: *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs login *
* (just hit return, no password is necessary) *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs checkout src *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* You are encouraged to submit any modifications (preferably in Unix diff *
* format) via e-mail to mods@synchro.net *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#include "sbbs.h"
#include "dat_rec.h"
#include "gen_defs.h"
#include <string.h>
/****************************************************************************/
/* Places into 'strout' CR or ETX terminated string starting at */
......
/* date_str.c */
/* Synchronet date/time string conversion routines */
/* $Id: date_str.c,v 1.29 2016/05/27 07:44:46 rswindell Exp $ */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
......@@ -17,25 +13,14 @@
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* Anonymous FTP access to the most recent released source is available at *
* ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net *
* *
* Anonymous CVS access to the development source and modification history *
* is available at cvs.synchro.net:/cvsroot/sbbs, example: *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs login *
* (just hit return, no password is necessary) *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs checkout src *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* You are encouraged to submit any modifications (preferably in Unix diff *
* format) via e-mail to mods@synchro.net *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#include "sbbs.h"
#include "date_str.h"
#include "datewrap.h"
const char *wday[]={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};
const char *mon[]={"Jan","Feb","Mar","Apr","May","Jun"
......
/* Synchronet date/time string conversion routines */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
* *
* Copyright Rob Swindell - http://www.synchro.net/copyright.html *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#ifndef _DATE_STR_H_
#define _DATE_STR_H_
#include "scfgdefs.h" // scfg_t
#include "dllexport.h"
#ifdef __cplusplus
extern "C" {
#endif
extern const char* wday[]; /* abbreviated weekday names */
extern const char* mon[]; /* abbreviated month names */
DLLEXPORT char * zonestr(short zone);
DLLEXPORT time32_t dstrtounix(scfg_t*, const char *str);
DLLEXPORT char * unixtodstr(scfg_t*, time32_t, char *str);
DLLEXPORT char * sectostr(uint sec, char *str);
DLLEXPORT char * seconds_to_str(uint, char*);
DLLEXPORT char * hhmmtostr(scfg_t* cfg, struct tm* tm, char* str);
DLLEXPORT char * timestr(scfg_t* cfg, time32_t intime, char* str);
#ifdef __cplusplus
}
#endif
#endif /* Don't add anything after this line */
\ No newline at end of file
/* delfiles.c */
/* Program to delete expired files from a Synchronet file database */
/* $Id: delfiles.c,v 1.14 2020/08/17 00:48:28 rswindell Exp $ */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
......@@ -17,25 +13,18 @@
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* Anonymous FTP access to the most recent released source is available at *
* ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net *
* *
* Anonymous CVS access to the development source and modification history *
* is available at cvs.synchro.net:/cvsroot/sbbs, example: *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs login *
* (just hit return, no password is necessary) *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs checkout src *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* You are encouraged to submit any modifications (preferably in Unix diff *
* format) via e-mail to mods@synchro.net *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#include "sbbs.h"
#include "scfgdefs.h"
#include "load_cfg.h"
#include "filedat.h"
#include "nopen.h"
#include "str_util.h"
#include <stdarg.h>
#define DELFILES_VER "1.01"
......
#ifdef DLLEXPORT
#undef DLLEXPORT
#endif
#if defined(_WIN32) && ! defined(__MINGW32__)
#ifdef SBBS_EXPORTS
#define DLLEXPORT __declspec(dllexport)
#else
#define DLLEXPORT __declspec(dllimport)
#endif
#endif
#ifndef DLLEXPORT
#define DLLEXPORT
#endif
......@@ -37,11 +37,12 @@
#include <errno.h>
#include <stdlib.h>
#include "sbbs.h"
#include "str_util.h"
#include "dirwrap.h"
#include "nopen.h"
#include "sbbsdefs.h"
#include "scfgdefs.h"
#include "conwrap.h"
#include "date_str.h"
int
main(int argc, char **argv)
......
/* $Id: dupefind.c,v 1.8 2020/08/17 00:48:28 rswindell Exp $ */
// vi: tabstop=4
#include "sbbs.h"
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
* *
* Copyright Rob Swindell - http://www.synchro.net/copyright.html *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#include "scfgdefs.h"
#include "str_util.h"
#include "load_cfg.h"
#include "nopen.h"
#include "crc32.h"
#include <stdarg.h>
#define DUPEFIND_VER "1.02"
......
/* FidoNet configuration utility */
/* $Id: echocfg.c,v 3.58 2020/08/17 00:48:28 rswindell Exp $ */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
......@@ -15,21 +13,9 @@
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* Anonymous FTP access to the most recent released source is available at *
* ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net *
* *
* Anonymous CVS access to the development source and modification history *
* is available at cvs.synchro.net:/cvsroot/sbbs, example: *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs login *
* (just hit return, no password is necessary) *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs checkout src *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* You are encouraged to submit any modifications (preferably in Unix diff *
* format) via e-mail to mods@synchro.net *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
......@@ -45,8 +31,10 @@
#define __COLORS
#include "ciolib.h"
#include "uifc.h"
#include "sbbs.h"
#include "scfgdefs.h"
#include "sbbsecho.h"
#include "sockwrap.h"
#include "str_util.h"
char **opt;
......
/* filedat.c */
/* Synchronet file database-related exported functions */
/* $Id: filedat.c,v 1.40 2019/01/12 08:11:13 rswindell Exp $ */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
......@@ -17,25 +13,19 @@
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* Anonymous FTP access to the most recent released source is available at *
* ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net *
* *
* Anonymous CVS access to the development source and modification history *
* is available at cvs.synchro.net:/cvsroot/sbbs, example: *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs login *
* (just hit return, no password is necessary) *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs checkout src *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* You are encouraged to submit any modifications (preferably in Unix diff *
* format) via e-mail to mods@synchro.net *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#include "sbbs.h"
#include "filedat.h"
#include "dat_rec.h"
#include "datewrap.h" // time32()
#include "str_util.h"
#include "nopen.h"
static char* crlf = "\r\n";
/****************************************************************************/
/* Gets filedata from dircode.DAT file */
......@@ -246,7 +236,7 @@ BOOL DLLCALL addfiledat(scfg_t* cfg, file_t* f)
close(file);
return(FALSE);
}
if(lread(file,ixbbuf,length)!=length) {
if(read(file,ixbbuf,length)!=length) {
close(file);
free(ixbbuf);
return(FALSE);
......@@ -293,7 +283,7 @@ BOOL DLLCALL addfiledat(scfg_t* cfg, file_t* f)
}
write(file,&f->dateuled,4);
write(file,&f->datedled,4); /* Write 0 for datedled */
if(lwrite(file,&ixbbuf[l],length-l)!=length-l) { /* Write rest of IXB */
if(write(file,&ixbbuf[l],length-l)!=length-l) { /* Write rest of IXB */
close(file);
free(ixbbuf);
return(FALSE);
......@@ -342,7 +332,7 @@ BOOL DLLCALL getfileixb(scfg_t* cfg, file_t* f)
close(file);
return(FALSE);
}
if(lread(file,ixbbuf,length)!=length) {
if(read(file,ixbbuf,length)!=length) {
close(file);
free(ixbbuf);
return(FALSE);
......@@ -393,7 +383,7 @@ BOOL DLLCALL putfileixb(scfg_t* cfg, file_t* f)
close(file);
return(FALSE);
}
if(lread(file,ixbbuf,length)!=length) {
if(read(file,ixbbuf,length)!=length) {
close(file);
free(ixbbuf);
return(FALSE);
......@@ -449,7 +439,7 @@ BOOL DLLCALL removefiledat(scfg_t* cfg, file_t* f)
close(file);
return(FALSE);
}
if(lread(file,ixbbuf,length)!=length) {
if(read(file,ixbbuf,length)!=length) {
close(file);
free(ixbbuf);
return(FALSE);
......@@ -464,7 +454,7 @@ BOOL DLLCALL removefiledat(scfg_t* cfg, file_t* f)
ixbname[i]=ixbbuf[l+i];
ixbname[i]=0;
if(stricmp(ixbname,fname))
if(lwrite(file,&ixbbuf[l],F_IXBSIZE)!=F_IXBSIZE) {
if(write(file,&ixbbuf[l],F_IXBSIZE)!=F_IXBSIZE) {
close(file);
free(ixbbuf);
return(FALSE);
......@@ -514,7 +504,7 @@ BOOL DLLCALL findfile(scfg_t* cfg, uint dirnum, char *filename)
close(file);
return(FALSE);
}
if(lread(file,ixbbuf,length)!=length) {
if(read(file,ixbbuf,length)!=length) {
close(file);
free(ixbbuf);
return(FALSE);
......
/* Synchronet Filebase Access functions */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
* *
* Copyright Rob Swindell - http://www.synchro.net/copyright.html *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#ifndef _FILEDAT_H_
#define _FILEDAT_H_
#include "scfgdefs.h" // scfg_t
#include "dllexport.h"
#ifdef __cplusplus
extern "C" {
#endif
DLLEXPORT BOOL getfileixb(scfg_t* cfg, file_t* f);
DLLEXPORT BOOL putfileixb(scfg_t* cfg, file_t* f);
DLLEXPORT BOOL getfiledat(scfg_t* cfg, file_t* f);
DLLEXPORT BOOL putfiledat(scfg_t* cfg, file_t* f);
DLLEXPORT void putextdesc(scfg_t* cfg, uint dirnum, ulong datoffset, char *ext);
DLLEXPORT void getextdesc(scfg_t* cfg, uint dirnum, ulong datoffset, char *ext);
DLLEXPORT char* getfilepath(scfg_t* cfg, file_t* f, char* path);
DLLEXPORT BOOL removefiledat(scfg_t* cfg, file_t* f);
DLLEXPORT BOOL addfiledat(scfg_t* cfg, file_t* f);
DLLEXPORT BOOL findfile(scfg_t* cfg, uint dirnum, char *filename);
DLLEXPORT char * padfname(const char *filename, char *str);
DLLEXPORT char * unpadfname(const char *filename, char *str);
DLLEXPORT BOOL rmuserxfers(scfg_t* cfg, int fromuser, int destuser, char *fname);
DLLEXPORT int update_uldate(scfg_t* cfg, file_t* f);
#ifdef __cplusplus
}
#endif
#endif /* Don't add anything after this line */
\ No newline at end of file
/* filelist.c */
/* Utility to create list of files from Synchronet file directories */
/* Default list format is FILES.BBS, but file size, uploader, upload date */
/* and other information can be included. */
/* $Id: filelist.c,v 1.22 2020/08/17 00:48:28 rswindell Exp $ */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
......@@ -19,25 +15,20 @@
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* Anonymous FTP access to the most recent released source is available at *
* ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net *
* *
* Anonymous CVS access to the development source and modification history *
* is available at cvs.synchro.net:/cvsroot/sbbs, example: *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs login *
* (just hit return, no password is necessary) *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs checkout src *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* You are encouraged to submit any modifications (preferably in Unix diff *
* format) via e-mail to mods@synchro.net *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#include "sbbs.h"
#include "datewrap.h"
#include "load_cfg.h"
#include "str_util.h"
#include "date_str.h"
#include "nopen.h"
#include "filedat.h"
#include "dat_rec.h"
#include <stdarg.h>
#define FILELIST_VER "3.15"
......
/* Synchronet DLL-exported mail-related routines */
/* $Id: getmail.c,v 1.20 2018/12/30 04:33:48 rswindell Exp $ */
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
......@@ -15,25 +13,13 @@
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* Anonymous FTP access to the most recent released source is available at *
* ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net *
* *
* Anonymous CVS access to the development source and modification history *
* is available at cvs.synchro.net:/cvsroot/sbbs, example: *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs login *
* (just hit return, no password is necessary) *
* cvs -d :pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs checkout src *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* You are encouraged to submit any modifications (preferably in Unix diff *
* format) via e-mail to mods@synchro.net *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#include "sbbs.h"
#include "getmail.h"
/****************************************************************************/
/* Returns the number of pieces of mail waiting for usernumber */
......
/****************************************************************************
* @format.tab-size 4 (Plain Text/Source Code File Header) *
* @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) *
* *
* Copyright Rob Swindell - http://www.synchro.net/copyright.html *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* See the GNU General Public License for more details: gpl.txt or *
* http://www.fsf.org/copyleft/gpl.html *
* *
* For Synchronet coding style and modification guidelines, see *
* http://www.synchro.net/source.html *
* *
* Note: If this box doesn't appear square, then you need to fix your tabs. *
****************************************************************************/
#ifndef _GETMAIL_H_
#define _GETMAIL_H_
#include "scfgdefs.h"
#include "smblib.h"
#include "dllexport.h"
#ifdef __cplusplus
extern "C" {