summaryrefslogtreecommitdiffstats
path: root/include/cmbbs.h
blob: 48d36ed30e8bf7a9887148b853bf17f74f5d080f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#ifndef _LIBBBS_H_
#define _LIBBBS_H_

#include "pttstruct.h" /* for fileheader_t */

/* name.c */
extern int is_validuserid(const char *id);

/* path.c */
/* XXX set*() all assume buffer size = PATHLEN */
extern void setdirpath(char *buf, const char *direct, const char *fname);
extern void setbpath (char *buf, const char *boardname);
extern void setbfile (char *buf, const char *boardname, const char *fname);
extern void setbnfile(char *buf, const char *boardname, const char *fname, int n);
extern void setapath(char *buf, const char *boardname);
extern void setadir (char *buf, const char *path);
extern void sethomepath(char *buf, const char *userid);
extern void sethomedir (char *buf, const char *userid);
extern void sethomeman (char *buf, const char *userid);
extern void sethomefile(char *buf, const char *userid, const char *fname);
// setbdir
// setuserfile

/* money.c */
extern int give_tax(int money);
extern const char* money_level(int money);

/* string.c */  
extern void obfuscate_ipstr(char *s);
extern bool is_valid_brdname(const char *brdname);

/* time.c */
extern const char *Now();   // m3 flavor time string

/* fhdr_stamp.c */
extern int stampfile(char *fpath, fileheader_t * fh);
extern int stampdir(char *fpath, fileheader_t * fh);
extern int stamplink(char *fpath, fileheader_t * fh);

/* cache.c */
#define search_ulist(uid) search_ulistn(uid, 1)
#define getbcache(bid) (bcache + bid - 1)
#define moneyof(uid) SHM->money[uid - 1]
#define getbtotal(bid) SHM->total[bid - 1]
#define getbottomtotal(bid) SHM->n_bottom[bid-1]
extern unsigned int safe_sleep(unsigned int seconds);
extern void *attach_shm(int shmkey, int shmsize);
extern void attach_SHM(void);
extern void add_to_uhash(int n, const char *id);
extern void remove_from_uhash(int n);
extern int  dosearchuser(const char *userid, char *rightid);
extern int  searchuser(const char *userid, char *rightid);
extern void setuserid(int num, const char *userid);
extern int  getuser(const char *userid, userec_t *xuser);
extern userinfo_t *search_ulistn(int uid, int unum);
extern userinfo_t *search_ulist_pid(int pid);
extern userinfo_t *search_ulist_userid(const char *userid);
extern int  setumoney(int uid, int money);
extern int  deumoney(int uid, int money);
extern void touchbtotal(int bid);
extern void sort_bcache(void);
extern void reload_bcache(void);
extern void resolve_boards(void);
extern void addbrd_touchcache(void);
extern void reset_board(int bid);
extern void setbottomtotal(int bid);
extern void setbtotal(int bid);
extern void touchbpostnum(int bid, int delta);
extern int  getbnum(const char *bname);
extern void buildBMcache(int);
extern void reload_fcache(void);
extern void reload_pttcache(void);
extern void resolve_garbage(void);
extern void resolve_fcache(void);
extern void hbflreload(int bid);
extern int is_hidden_board_friend(int bid, int uid);
#ifdef USE_COOLDOWN
# define cooldowntimeof(uid) (SHM->cooldowntime[uid - 1] & 0xFFFFFFF0)
# define posttimesof(uid) (SHM->cooldowntime[uid - 1] & 0xF)
extern void add_cooldowntime(int uid, int min);
extern void add_posttimes(int uid, int times);
# endif

#endif