85
87
extern void self_destruct(void);
86
88
extern int GetInteger(void);
90
/* extra functions from cache_cf.c useful for lib modules */
91
extern void parse_int(int *var);
92
extern void parse_eol(char *volatile *var);
93
extern void parse_wordlist(wordlist ** list);
94
extern void requirePathnameExists(const char *name, const char *path);
95
extern void parse_time_t(time_t * var);
123
131
extern void clientHttpConnectionsClose(void);
124
132
extern StoreEntry *clientCreateStoreEntry(clientHttpRequest *, method_t, request_flags);
125
133
extern int isTcpHit(log_type);
134
extern void clientReadBody(request_t * req, char *buf, size_t size, CBCB * callback, void *data);
135
extern int clientAbortBody(request_t * req);
127
137
extern int commSetNonBlocking(int fd);
128
138
extern int commUnsetNonBlocking(int fd);
707
717
extern void redirectInit(void);
708
718
extern void redirectShutdown(void);
710
extern void authenticateStart(acl_proxy_auth_user *, RH *, void *);
711
extern void authenticateInit(void);
721
extern void authSchemeSetup(void);
724
extern void authenticateAuthUserMerge(auth_user_t *, auth_user_t *);
725
extern auth_user_t *authenticateAuthUserNew(const char *);
726
extern int authenticateAuthSchemeId(const char *typestr);
727
extern void authenticateStart(auth_user_request_t *, RH *, void *);
728
extern void authenticateSchemeInit(void);
729
extern void authenticateInit(authConfig *);
712
730
extern void authenticateShutdown(void);
731
extern void authenticateFixHeader(HttpReply *, auth_user_request_t *, request_t *, int);
732
extern void authenticateAddTrailer(HttpReply *, auth_user_request_t *, request_t *, int);
733
extern auth_user_request_t *authenticateGetAuthUser(const char *proxy_auth);
734
extern void authenticateAuthenticateUser(auth_user_request_t *, request_t *, ConnStateData *, http_hdr_type);
735
extern void authenticateAuthUserUnlock(auth_user_t * auth_user);
736
extern void authenticateAuthUserLock(auth_user_t * auth_user);
737
extern void authenticateAuthUserRequestUnlock(auth_user_request_t *);
738
extern void authenticateAuthUserRequestLock(auth_user_request_t *);
739
extern char *authenticateAuthUserRequestMessage(auth_user_request_t *);
740
extern int authenticateAuthUserInuse(auth_user_t * auth_user);
741
extern void authenticateAuthUserRequestSetIp(auth_user_request_t *, struct in_addr);
742
extern int authenticateDirection(auth_user_request_t *);
743
extern FREE authenticateFreeProxyAuthUser;
744
extern void authenticateFreeProxyAuthUserACLResults(void *data);
745
extern void authenticateProxyUserCacheCleanup(void *);
746
extern void authenticateInitUserCache();
748
extern void authenticateProxyAuthCacheAddLink(const char *key, auth_user_t *);
750
extern int authenticateActiveSchemeCount();
751
extern int authenticateSchemeCount();
752
extern void authenticateUserNameCacheAdd(auth_user_t * auth_user);
753
extern int authenticateCheckAuthUserIP(struct in_addr request_src_addr, auth_user_request_t * auth_user);
754
extern int authenticateUserAuthenticated(auth_user_request_t *);
755
extern void authenticateUserCacheRestart();
756
extern char *authenticateUserUsername(auth_user_t *);
757
extern char *authenticateUserRequestUsername(auth_user_request_t *);
758
extern int authenticateValidateUser(auth_user_request_t *);
759
extern void authenticateOnCloseConnection(ConnStateData * conn);
760
extern void authSchemeAdd(char *type, AUTHSSETUP * setup);
714
762
extern void refreshAddToList(const char *, int, time_t, int, time_t);
715
763
extern int refreshIsCachable(const StoreEntry *);
1028
1076
extern void PrintRusage(void);
1029
1077
extern void dumpMallocStats(void);
1031
extern void pumpInit(int fd, request_t * r, char *uri);
1032
extern void pumpStart(int, FwdState *, CWCB * callback, void *);
1033
extern int pumpMethod(method_t method);
1034
extern int pumpRestart(request_t *);
1036
1079
#if USE_UNLINKD
1037
1080
extern void unlinkdInit(void);
1038
1081
extern void unlinkdClose(void);
1084
1127
extern void dlinkAdd(void *data, dlink_node *, dlink_list *);
1085
1128
extern void dlinkAddTail(void *data, dlink_node *, dlink_list *);
1086
1129
extern void dlinkDelete(dlink_node * m, dlink_list * list);
1130
extern void dlinkNodeDelete(dlink_node * m);
1131
extern dlink_node *dlinkNodeNew();
1087
1133
extern void kb_incr(kb_t *, size_t);
1088
1134
extern double gb_to_double(const gb_t *);
1089
1135
extern const char *gb_to_str(const gb_t *);
1189
1235
extern void helperOpenServers(helper * hlp);
1236
extern void helperStatefulOpenServers(statefulhelper * hlp);
1190
1237
extern void helperSubmit(helper * hlp, const char *buf, HLPCB * callback, void *data);
1238
extern void helperStatefulSubmit(statefulhelper * hlp, const char *buf, HLPSCB * callback, void *data, helper_stateful_server * lastserver);
1191
1239
extern void helperStats(StoreEntry * sentry, helper * hlp);
1240
extern void helperStatefulStats(StoreEntry * sentry, statefulhelper * hlp);
1192
1241
extern void helperShutdown(helper * hlp);
1242
extern void helperStatefulShutdown(statefulhelper * hlp);
1193
1243
extern helper *helperCreate(const char *);
1244
extern statefulhelper *helperStatefulCreate(const char *);
1194
1245
extern void helperFree(helper *);
1246
extern void helperStatefulFree(statefulhelper *);
1247
extern void helperStatefulReset(helper_stateful_server * srv);
1248
extern void helperStatefulReleaseServer(helper_stateful_server * srv);
1249
extern void *helperStatefulServerGetData(helper_stateful_server * srv);
1250
extern helper_stateful_server *helperStatefulDefer(statefulhelper *);
1196
1254
#if USE_LEAKFINDER
1197
1255
extern void leakInit(void);