projects
/
silc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
More SILC Toolkit 1.1 porting work.
[silc.git]
/
apps
/
silcd
/
server_util.c
diff --git
a/apps/silcd/server_util.c
b/apps/silcd/server_util.c
index 545ec504320478204ed4152f74d6123711f880a1..084628cb7affdd65cc50889d0aa982a153ffa0d9 100644
(file)
--- a/
apps/silcd/server_util.c
+++ b/
apps/silcd/server_util.c
@@
-1056,9
+1056,12
@@
silc_server_find_socket_by_host(SilcServer server,
SilcUInt32 silc_server_num_sockets_by_remote(SilcServer server,
const char *ip,
const char *hostname,
SilcUInt32 silc_server_num_sockets_by_remote(SilcServer server,
const char *ip,
const char *hostname,
- SilcUInt16 port)
+ SilcUInt16 port,
+ SilcConnectionType type)
{
SilcServerConnection conn;
{
SilcServerConnection conn;
+ SilcIDListData idata;
+ SilcConnectionType t = SILC_CONN_UNKNOWN;
int count = 0;
if (!ip && !hostname)
int count = 0;
if (!ip && !hostname)
@@
-1066,9
+1069,14
@@
SilcUInt32 silc_server_num_sockets_by_remote(SilcServer server,
silc_dlist_start(server->conns);
while ((conn = silc_dlist_get(server->conns))) {
silc_dlist_start(server->conns);
while ((conn = silc_dlist_get(server->conns))) {
+ if (conn->sock) {
+ idata = silc_packet_get_context(conn->sock);
+ if (idata)
+ t = idata->conn_type;
+ }
if (((ip && !strcmp(conn->remote_host, ip)) ||
(hostname && !strcmp(conn->remote_host, hostname))) &&
if (((ip && !strcmp(conn->remote_host, ip)) ||
(hostname && !strcmp(conn->remote_host, hostname))) &&
- conn->remote_port == port)
+ conn->remote_port == port
&& t == type
)
count++;
}
count++;
}