X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fctdl_module.h;h=9c6a90f22744fdb541c5bcb9e4122209ab30e6d9;hb=882ff5a53c3b4e440520a073cf07dc60b2671876;hp=6d16624b584d93dcd9d45e6f8d2ce6f32a8b76cc;hpb=a520d904d0069654c57d2b69618bee1225ee3067;p=citadel.git diff --git a/citadel/ctdl_module.h b/citadel/ctdl_module.h index 6d16624b5..9c6a90f22 100644 --- a/citadel/ctdl_module.h +++ b/citadel/ctdl_module.h @@ -105,10 +105,8 @@ void CtdlUnregisterUserHook(void (*fcn_ptr)(struct ctdluser *), int EventType); void CtdlRegisterXmsgHook(int (*fcn_ptr)(char *, char *, char *, char *), int order); void CtdlUnregisterXmsgHook(int (*fcn_ptr)(char *, char *, char *, char *), int order); -void CtdlRegisterMessageHook(int (*handler)(struct CtdlMessage *, recptypes*), - int EventType); -void CtdlUnregisterMessageHook(int (*handler)(struct CtdlMessage *, recptypes *), - int EventType); +void CtdlRegisterMessageHook(int (*handler)(struct CtdlMessage *, struct recptypes *), int EventType); +void CtdlUnregisterMessageHook(int (*handler)(struct CtdlMessage *, struct recptypes *), int EventType); void CtdlRegisterRoomHook(int (*fcn_ptr)(struct ctdlroom *) ); void CtdlUnregisterRoomHook(int (*fnc_ptr)(struct ctdlroom *) ); @@ -207,9 +205,6 @@ long CtdlGetCurrentMessageNumber(void); /* * Expose various room operation functions from room_ops.c to the modules API */ -typedef struct CfgLineType CfgLineType; -typedef struct RoomNetCfgLine RoomNetCfgLine; -typedef struct OneRoomNetCfg OneRoomNetCfg; unsigned CtdlCreateRoom(char *new_room_name, int new_room_type, @@ -225,9 +220,8 @@ void CtdlRoomAccess(struct ctdlroom *roombuf, struct ctdluser *userbuf, int *res void CtdlPutRoomLock(struct ctdlroom *qrbuf); typedef void (*ForEachRoomCallBack)(struct ctdlroom *EachRoom, void *out_data); void CtdlForEachRoom(ForEachRoomCallBack CB, void *in_data); -typedef void (*ForEachRoomNetCfgCallBack)(struct ctdlroom *EachRoom, void *out_data, OneRoomNetCfg *OneRNCFG); +typedef void (*ForEachRoomNetCfgCallBack)(struct ctdlroom *EachRoom, void *out_data, char *cfg); char *LoadRoomNetConfigFile(long roomnum); -void CtdlForEachNetCfgRoom(ForEachRoomNetCfgCallBack CB, void *in_data); void SaveChangedConfigs(void); void CtdlDeleteRoom(struct ctdlroom *qrbuf); int CtdlRenameRoom(char *old_name, char *new_name, int new_floor); @@ -288,73 +282,7 @@ void CtdlModuleDoSearch(int *num_msgs, long **search_msgs, const char *search_st #define TWITROOM CtdlGetConfigStr("c_twitroom") #define RESTRICT_INTERNET CtdlGetConfigInt("c_restrict") -typedef void (*CfgLineParser)(const CfgLineType *ThisOne, StrBuf *Line, const char *LinePos, OneRoomNetCfg *rncfg); -typedef void (*CfgLineSerializer)(const CfgLineType *ThisOne, StrBuf *OuptputBuffer, OneRoomNetCfg *rncfg, RoomNetCfgLine *data); -typedef void (*CfgLineDeAllocator)(const CfgLineType *ThisOne, RoomNetCfgLine **data); - -struct CfgLineType { - RoomNetCfg C; - CfgLineParser Parser; - CfgLineSerializer Serializer; - CfgLineDeAllocator DeAllocator; - ConstStr Str; - int IsSingleLine; - int nSegments; -}; - -struct RoomNetCfgLine { - RoomNetCfgLine *next; - int nValues; - StrBuf **Value; -}; - -struct OneRoomNetCfg { - long lastsent; - // long changed; - StrBuf *Sender; - StrBuf *RoomInfo; - RoomNetCfgLine *NetConfigs[maxRoomNetCfg]; - StrBuf *misc; -}; - - #define CtdlREGISTERRoomCfgType(a, p, uniq, nSegs, s, d) RegisterRoomCfgType(#a, sizeof(#a) - 1, a, p, uniq, nSegs, s, d); -void RegisterRoomCfgType(const char* Name, long len, RoomNetCfg eCfg, CfgLineParser p, int uniq, int nSegments, CfgLineSerializer s, CfgLineDeAllocator d); -void ParseGeneric(const CfgLineType *ThisOne, StrBuf *Line, const char *LinePos, OneRoomNetCfg *sc); -void SerializeGeneric(const CfgLineType *ThisOne, StrBuf *OutputBuffer, OneRoomNetCfg *sc, RoomNetCfgLine *data); -void DeleteGenericCfgLine(const CfgLineType *ThisOne, RoomNetCfgLine **data); -RoomNetCfgLine *DuplicateOneGenericCfgLine(const RoomNetCfgLine *data); -void AddRoomCfgLine(OneRoomNetCfg *OneRNCfg, struct ctdlroom *qrbuf, RoomNetCfg LineType, RoomNetCfgLine *Line); - -OneRoomNetCfg *CtdlGetNetCfgForRoom(long QRNumber); -void SaveRoomNetConfigFile(OneRoomNetCfg *, long); -void FreeRoomNetworkStruct(OneRoomNetCfg **); - -typedef struct _nodeconf { - int DeleteMe; - StrBuf *NodeName; - StrBuf *Secret; - StrBuf *Host; - StrBuf *Port; -}CtdlNodeConf; - -HashList* CtdlLoadIgNetCfg(void); - - -int CtdlNetconfigCheckRoomaccess(char *errmsgbuf, - size_t n, - const char* RemoteIdentifier); - - -typedef struct __NetMap { - StrBuf *NodeName; - time_t lastcontact; - StrBuf *NextHop; -}CtdlNetMap; - -HashList* CtdlReadNetworkMap(void); -StrBuf *CtdlSerializeNetworkMap(HashList *Map); -