OSSP CVS Repository

ossp - Check-in [214]
Not logged in
[Honeypot]  [Browse]  [Home]  [Login]  [Reports
[Search]  [Ticket]  [Timeline
  [Patchset]  [Tagging/Branching

Check-in Number: 214
Date: 2000-Dec-12 16:54:29 (local)
2000-Dec-12 15:54:29 (UTC)
User:simons
Branch:
Comment: All internal prototypes and definitions.
Tickets:
Inspections:
Files:
ossp-pkg/petidomo/petidomo.h      added-> 1.1

ossp-pkg/petidomo/petidomo.h -> 1.1

*** /dev/null    Sat Nov 23 01:26:37 2024
--- -    Sat Nov 23 01:26:54 2024
***************
*** 0 ****
--- 1,228 ----
+ /*
+    $Source: /v/ossp/cvs/ossp-pkg/petidomo/petidomo.h,v $
+    $Revision: 1.1 $
+ 
+    Copyright (C) 2000 by CyberSolutions GmbH, Germany.
+ 
+    This file is part of OpenPetidomo.
+ 
+    OpenPetidomo 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, or (at your option)
+    any later version.
+ 
+    OpenPetidomo is distributed in the hope that it will be useful, but
+    WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+    General Public License for more details.
+ */
+ 
+ #ifndef __PETIDOMO_H__
+ #define __PETIDOMO_H__ 1
+ 
+ 
+ /********** Useful defines and declarations **********/
+ 
+ #ifndef __HAVE_DEFINED_BOOL__
+ #    define __HAVE_DEFINED_BOOL__ 1
+      typedef int bool;
+ #endif
+ 
+ #ifndef DEBUG_DMALLOC
+ #    define xmalloc(size)    malloc(size)
+ #    define xstrdup(string)  strdup(string)
+ #endif
+ 
+ #undef FALSE
+ #define FALSE 0
+ #undef TRUE
+ #define TRUE 1
+ 
+ /********** Includes all modules need **********/
+ 
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <assert.h>
+ #include <syslog.h>
+ #ifdef DEBUG_DMALLOC
+ #  include <dmalloc.h>
+ #endif
+ 
+ #include "libargv/argv.h"
+ #include "debug.h"
+ 
+ /********** config.c **********/
+ 
+ struct PD_Config {
+     char *    basedir;
+     char *    fqdn;
+     char *    master_password;
+     char *    mta;
+     char *    mta_options;
+     int       detach;
+     int       show_stats;
+ };
+ 
+ enum {
+     LIST_OPEN,
+     LIST_CLOSED,
+     LIST_MODERATED
+ };
+ 
+ struct List_Config {
+     unsigned int  listtype;
+     int           allowpubsub;
+     int           allowaliensub;
+     int           allowmembers;
+     int           showonindex;
+     char *        fqdn;
+     char *        admin_password;
+     char *        posting_password;
+     char *        postingfilter;
+     char *        archivepath;
+     char *        reply_to;
+ };
+ 
+ int InitPetidomo(void);
+ const struct PD_Config *getMasterConfig(void  );
+ const struct List_Config *getListConfig(const char *listname);
+ 
+ /********** rfcparse.c **********/
+ 
+ struct Mail {
+     char *     Header;
+     char *     Body;
+     char *     Envelope;
+     char *     From;
+     char *     Subject;
+     char *     Reply_To;
+     char *     Message_Id;
+     char *     Approve;
+     char *     ListSignature;
+ };
+ 
+ void RemoveCarrigeReturns(char *buffer);
+ int isRFC822Address(const char *buffer);
+ int ParseAddressLine(char *buffer);
+ int ParseReplyToLine(char *buffer);
+ int ParseFromLine(char *buffer);
+ int ParseMessageIdLine(char *buffer);
+ int ParseApproveLine(char *buffer);
+ void CanonizeAddress(char **buffer, const char *fqdn);
+ int ParseMail(struct Mail **result, char *incoming_mail, const char *fqdn);
+ 
+ /********** io.c **********/
+ 
+ char *LoadFromDescriptor(int fd);
+ char *loadfile(const char *filename);
+ int savefile(const char *filename, const char *buffer);
+ 
+ /********** archive.c **********/
+ 
+ int ArchiveMail(const struct Mail *MailStruct, const char *listname);
+ 
+ /********** authen.c **********/
+ 
+ int FindBodyPassword(struct Mail *MailStruct);
+ int isValidAdminPassword(const char *password, const char *listname);
+ int isValidPostingPassword(const char *password, const char *listname);
+ 
+ /********** exit.c **********/
+ 
+ void RescueMail(const char *mail);
+ void RemoveRescueMail(void);
+ 
+ /********** filter.c **********/
+ 
+ int MailFilter(struct Mail *MailStruct, const char *filter);
+ 
+ /********** acl.c **********/
+ 
+ int checkACL(struct Mail *, const char *, int *, char **);
+ 
+ enum {
+     ACL_DROP,
+     ACL_PASS,
+     ACL_REDIRECT,
+     ACL_FORWARD,
+     ACL_REJECT,
+     ACL_REJECTWITH,
+     ACL_FILTER,
+     ACL_NONE
+ };
+ 
+ /********** handleacl.c **********/
+ 
+ int handleACL(struct Mail *MailStruct, const char *listname, int operation, char *parameter);
+ 
+ /********** help.c **********/
+ 
+ int SendHelp(struct Mail *MailStruct, const char *param1, const char *param2, const char *defaultlist);
+ int Indecipherable(struct Mail *MailStruct, const char *defaultlist);
+ 
+ /********** index.c **********/
+ 
+ int GenIndex(struct Mail *MailStruct, const char *param1, const char *param2, const char *defaultlist);
+ 
+ /********** io.c **********/
+ 
+ char *LoadFromDescriptor(int fd);
+ char *loadfile(const char *filename);
+ int savefile(const char *filename, const char *buffer);
+ 
+ /********** listserv.c **********/
+ 
+ int listserv_main(char *incoming_mail, char *default_list);
+ 
+ /********** mailer.c **********/
+ 
+ FILE *OpenMailer(const char *envelope, const char *recipients[]);
+ FILE *vOpenMailer(const char *envelope, ...  );
+ int CloseMailer(FILE * fh);
+ int ListMail(const char *envelope, const char *listname, const struct Mail *MailStruct);
+ 
+ /********** members.c **********/
+ 
+ int SendSubscriberList(struct Mail *MailStruct, const char *param1, const char *param2, const char *defaultlist);
+ 
+ /********** password.c **********/
+ 
+ int setPassword(struct Mail *MailStruct, const char *param1, const char *param2, const char *defaultlist);
+ const char *getPassword(void  );
+ 
+ /********** tool.c **********/
+ 
+ char *buildFuzzyMatchAddress(const char *);
+ int isValidListName(const char *);
+ bool isSubscribed(const char *, const char *, char **, char **, bool);
+ 
+ /********** signature.c **********/
+ 
+ void AppendSignature(FILE * fh);
+ 
+ /********** unsubscribe.c **********/
+ 
+ int DeleteAddress(struct Mail *MailStruct, const char *param1, const char *param2, const char *defaultlist);
+ 
+ /********** argvSetDebugLevel.c **********/
+ 
+ int argvSetDebugLevel(argv_array_t debug);
+ 
+ /********** hermes.c **********/
+ 
+ int hermes_main(char *incoming_mail, const char *listname);
+ 
+ /********** subscribe.c **********/
+ 
+ int AddAddress(struct Mail *MailStruct, const char *param1, const char *param2, const char *defaultlist);
+ 
+ /********** parsearray.c **********/
+ 
+ struct Parse {
+     const char *    keyword;
+     int             (*handleCommand)(struct Mail *, const char *, const char *, const
+  char *);
+ };
+ extern struct Parse ParseArray[];
+ 
+ #endif /* !defined(__PETIDOMO_H__) */

CVSTrac 2.0.1