| 1 | /* malias.h - header file for global mailing aliases/lists */ |
|---|
| 2 | |
|---|
| 3 | #ifndef _MALIAS_H |
|---|
| 4 | #define _MALIAS_H |
|---|
| 5 | |
|---|
| 6 | |
|---|
| 7 | #define MALIAS_TOKEN '+' /* Initial char for alias names */ |
|---|
| 8 | |
|---|
| 9 | #define ALIAS_MEMBERS 0x1 /* Only those on the alias */ |
|---|
| 10 | #define ALIAS_ADMIN 0x2 /* Only admin/powered */ |
|---|
| 11 | #define ALIAS_OWNER 0x4 /* Only the owner */ |
|---|
| 12 | |
|---|
| 13 | /** A mail alias. |
|---|
| 14 | * This structure represents a mail alias (or mailing list). |
|---|
| 15 | */ |
|---|
| 16 | struct mail_alias { |
|---|
| 17 | char *name; /**< Name of the alias */ |
|---|
| 18 | unsigned char *desc; /**< Description */ |
|---|
| 19 | int size; /**< Size of the members array */ |
|---|
| 20 | dbref *members; /**< Pointer to an array of dbrefs of list members */ |
|---|
| 21 | int nflags; /**< Permissions for who can use/see alias name */ |
|---|
| 22 | int mflags; /**< Permissions for who can list alias members */ |
|---|
| 23 | dbref owner; /**< Who owns (controls) this alias */ |
|---|
| 24 | }; |
|---|
| 25 | |
|---|
| 26 | |
|---|
| 27 | /* From malias.c */ |
|---|
| 28 | struct mail_alias *get_malias(dbref player, char *alias); |
|---|
| 29 | int ismember(struct mail_alias *m, dbref player); |
|---|
| 30 | void do_malias_privs(dbref player, char *alias, char *privs, int typs); |
|---|
| 31 | void do_malias_mprivs(dbref player, char *alias, char *privs); |
|---|
| 32 | extern void do_malias(dbref player, char *arg1, char *arg2); |
|---|
| 33 | extern void do_malias_create(dbref player, char *alias, char *tolist); |
|---|
| 34 | extern void do_malias_members(dbref player, char *alias); |
|---|
| 35 | extern void do_malias_list(dbref player); |
|---|
| 36 | extern void do_malias_desc(dbref player, char *alias, char *desc); |
|---|
| 37 | extern void do_malias_chown(dbref player, char *alias, char *owner); |
|---|
| 38 | extern void do_malias_rename(dbref player, char *alias, char *newname); |
|---|
| 39 | extern void do_malias_destroy(dbref player, char *alias); |
|---|
| 40 | extern void do_malias_all(dbref player); |
|---|
| 41 | extern void do_malias_stats(dbref player); |
|---|
| 42 | extern void do_malias_nuke(dbref player); |
|---|
| 43 | extern void do_malias_add(dbref player, char *alias, char *tolist); |
|---|
| 44 | extern void do_malias_remove(dbref player, char *alias, char *tolist); |
|---|
| 45 | extern void load_malias(FILE * fp); |
|---|
| 46 | extern void save_malias(FILE * fp); |
|---|
| 47 | extern void malias_cleanup(dbref player); |
|---|
| 48 | extern void do_malias_set(dbref player, char *alias, char *tolist); |
|---|
| 49 | #else /* MAIL_ALIASES */ |
|---|
| 50 | |
|---|
| 51 | /* We still need this one */ |
|---|
| 52 | void load_malias(FILE * fp); |
|---|
| 53 | |
|---|
| 54 | #endif |
|---|