00001 00012 /* 00013 * Copyright (c) 1996-1997 Chip Norkus 00014 * Copyright (c) 1997 Max Byrd 00015 * Copyright (c) 1997 Greg Poma 00016 * All rights reserved. 00017 * 00018 * Redistribution and use in source and binary forms, with or without 00019 * modification, are permitted provided that the following conditions 00020 * are met: 00021 * 1. Redistributions of source code must retain the above copyright 00022 * notice, this list of conditions and the following disclaimer. 00023 * 2. Redistributions in binary form must reproduce the above copyright 00024 * notice, this list of conditions and the following disclaimer in the 00025 * documentation and/or other materials provided with the distribution. 00026 * 3. Neither the name of the authors nor the names of its contributors 00027 * may be used to endorse or promote products derived from this software 00028 * without specific prior written permission. 00029 * 00030 * THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND 00031 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00032 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 00033 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE 00034 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 00035 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 00036 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 00037 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 00038 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 00039 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 00040 * SUCH DAMAGE. 00041 */ 00042 00043 #ifndef __MEMOSERV_H 00044 #define __MEMOSERV_H 00045 00046 #include "queue.h" 00047 00048 /* 00049 * user MemoServ flags 00050 */ 00051 #define MNOMEMO 0x0001 00052 #define MSECURE 0x0002 00053 #define MSELFCLEAN 0x0004 00054 #define MFORWARDED 0x0008 00055 00056 /* 00057 * sent memo flags 00058 */ 00059 #define MEMO_UNREAD 0x0001 00060 #define MEMO_DELETE 0x0002 00061 #define MEMO_SAVE 0x0004 00062 #define MEMO_FWD 0x0008 00063 #define MEMO_REPLY 0x0010 00064 00065 /* 00066 * functions 00067 */ 00068 void initMemoBox(MemoBox *); 00069 void delMemo(MemoBox *, MemoList *); 00070 void checkMemos(UserList *); 00071 void cleanMemos(UserList *); 00072 void addMemoBlock(MemoBox *, MemoBlock *); 00073 void delMemoBlock(MemoBox *, MemoBlock *); 00074 MemoBlock *getMemoBlockData(MemoBox *, RegNickList *); 00075 00076 void syncMemoData(time_t); 00077 void sendToMemoServ(UserList *, char **, int); 00078 int ShouldMemoExpire(MemoList *, int); 00079 00080 #endif /* __MEMOSERV_H */