Author: adrian.chadd
Date: Sat Mar 28 14:55:59 2009
New Revision: 13881
Modified:
branches/LUSCA_HEAD/src/client_side.c
branches/LUSCA_HEAD/src/http.c
branches/LUSCA_HEAD/src/protos.h
Log:
Add in some functions to track number of client and server connections.
Modified: branches/LUSCA_HEAD/src/client_side.c
==============================================================================
--- branches/LUSCA_HEAD/src/client_side.c (original)
+++ branches/LUSCA_HEAD/src/client_side.c Sat Mar 28 14:55:59 2009
@@ -169,6 +169,8 @@
static inline int clientNatLookup(ConnStateData * conn);
static int clientCheckBeginForwarding(clientHttpRequest * http);
+static int clientside_num_conns = 0;
+
#if USE_IDENT
static void
clientIdentDone(const char *ident, void *data)
@@ -1321,6 +1323,7 @@
if (connState->pinning.fd >= 0)
comm_close(connState->pinning.fd);
cbdataFree(connState);
+ clientside_num_conns--;
#ifdef _SQUID_LINUX_
/* prevent those nasty RST packets */
{
@@ -4846,6 +4849,7 @@
fd_note_static(fd, "client http connect");
CBDATA_INIT_TYPE(ConnStateData);
connState = cbdataAlloc(ConnStateData);
+ clientside_num_conns++;
connState->port = s;
cbdataLock(connState->port);
sqinet_get_v4_sockaddr_ptr(&peer, &connState->peer,
SQADDR_ASSERT_IS_V4);
@@ -5023,6 +5027,7 @@
F = &fd_table[fd];
debug(33, 4) ("httpsAccept: FD %d: accepted port %d client %s:%d\n",
fd,
F->local_port, F->ipaddrstr, F->remote_port);
connState = cbdataAlloc(ConnStateData);
+ clientside_num_conns ++;
connState->port = (http_port_list *) s;
cbdataLock(connState->port);
sqinet_get_v4_sockaddr_ptr(&peer, &connState->peer,
SQADDR_ASSERT_IS_V4);
@@ -5458,3 +5463,9 @@
}
}
#endif
+
+int
+connStateGetCount(void)
+{
+ return clientside_num_conns;
+}
Modified: branches/LUSCA_HEAD/src/http.c
==============================================================================
--- branches/LUSCA_HEAD/src/http.c (original)
+++ branches/LUSCA_HEAD/src/http.c Sat Mar 28 14:55:59 2009
@@ -56,6 +56,8 @@
static void httpMaybeRemovePublic(StoreEntry *, HttpReply *);
static int peer_supports_connection_pinning(HttpStateData * httpState);
+static int http_num_conns = 0;
+
static int
httpUrlHostsMatch(const char *url1, const char *url2)
{
@@ -105,6 +107,7 @@
httpState->orig_request = NULL;
stringClean(&httpState->chunkhdr);
cbdataFree(httpState);
+ http_num_conns--;
}
int
@@ -1738,6 +1741,7 @@
storeUrl(fwd->entry));
CBDATA_INIT_TYPE(HttpStateData);
httpState = cbdataAlloc(HttpStateData);
+ http_num_conns++;
storeLockObject(fwd->entry);
httpState->fwd = fwd;
httpState->entry = fwd->entry;
@@ -1886,4 +1890,10 @@
{
version->major = major;
version->minor = minor;
+}
+
+int
+httpGetCount(void)
+{
+ return http_num_conns;
}
Modified: branches/LUSCA_HEAD/src/protos.h
==============================================================================
--- branches/LUSCA_HEAD/src/protos.h (original)
+++ branches/LUSCA_HEAD/src/protos.h Sat Mar 28 14:55:59 2009
@@ -185,6 +185,7 @@
extern int httpAnonHdrDenied(http_hdr_type hdr_id);
extern void httpBuildRequestHeader(request_t *, request_t *, StoreEntry *,
HttpHeader *, http_state_flags);
extern const char *httpMakeVaryMark(request_t * request, HttpReply *
reply);
+extern int httpGetCount(void);
/* HttpStatusLine.c */
extern void httpStatusLinePackInto(const HttpStatusLine * sline, Packer *
p);
@@ -1077,7 +1078,7 @@
extern void clientInterpretRequestHeaders(clientHttpRequest * http);
extern void clientAccessCheck2(void *data);
extern void clientFinishRewriteStuff(clientHttpRequest * http);
-
+extern int connStateGetCount(void);
/* client_side_redirect.c */
extern void clientRedirectStart(clientHttpRequest * http);
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"lusca-commit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/lusca-commit?hl=en
-~----------~----~----~----~------~----~------~--~---