summaryrefslogtreecommitdiffstats
path: root/sesman
diff options
context:
space:
mode:
Diffstat (limited to 'sesman')
-rw-r--r--sesman/libscp/libscp_v1s_mng.c15
-rw-r--r--sesman/scp_v1_mng.c10
2 files changed, 13 insertions, 12 deletions
diff --git a/sesman/libscp/libscp_v1s_mng.c b/sesman/libscp/libscp_v1s_mng.c
index 9c31cec6..3a3e1d98 100644
--- a/sesman/libscp/libscp_v1s_mng.c
+++ b/sesman/libscp/libscp_v1s_mng.c
@@ -188,11 +188,18 @@ scp_v1s_mng_list_sessions(struct SCP_CONNECTION *c, struct SCP_SESSION *s,
struct SCP_DISCONNECTED_SESSION *cds;
/* calculating the number of packets to send */
- pktcnt = sescnt / SCP_SERVER_MAX_LIST_SIZE;
-
- if ((sescnt % SCP_SERVER_MAX_LIST_SIZE) != 0)
+ if (sescnt == 0)
+ {
+ pktcnt = 1;
+ }
+ else
{
- pktcnt++;
+ pktcnt = sescnt / SCP_SERVER_MAX_LIST_SIZE;
+
+ if ((sescnt % SCP_SERVER_MAX_LIST_SIZE) != 0)
+ {
+ pktcnt++;
+ }
}
for (idx = 0; idx < pktcnt; idx++)
diff --git a/sesman/scp_v1_mng.c b/sesman/scp_v1_mng.c
index 044b35ad..d44b9e04 100644
--- a/sesman/scp_v1_mng.c
+++ b/sesman/scp_v1_mng.c
@@ -84,19 +84,13 @@ scp_v1_mng_process(struct SCP_CONNECTION *c, struct SCP_SESSION *s)
/* list disconnected sessions */
slist = session_get_byuser(NULL, &scount, SESMAN_SESSION_STATUS_ALL);
LOG_DBG("sessions on TS: %d (slist: %x)", scount, slist);
-
if (0 == slist)
{
- // e=scp_v1s_connection_error(c, "Internal error");
log_message(LOG_LEVEL_INFO, "No sessions on Terminal Server");
- end = 0;
- }
- else
- {
- e = scp_v1s_mng_list_sessions(c, s, scount, slist);
- g_free(slist);
}
+ e = scp_v1s_mng_list_sessions(c, s, scount, slist);
+ g_free(slist);
break;
default:
/* we check the other errors */