* Here's where we (hopefully) have most parts of the Citadel server that
* might need tweaking when run on different operating system variants.
*
- * Copyright (c) 1987-2017 by the citadel.org team
+ * Copyright (c) 1987-2019 by the citadel.org team
*
* This program is open source software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License, version 3.
fd = fopen(fn, "a+");
if (fd == NULL) {
syslog(LOG_ERR, "%s: %m", fn);
- cit_backtrace();
exit(1);
}
fprintf(fd, "Sending: BufSize: %d BufContent: [", nbytes);
}
} else {
syslog(LOG_ERR, "sysdep: client_write(%d bytes) select failed: %m", nbytes - bytes_written);
- cit_backtrace();
client_close();
Ctx->kill_me = KILLME_SELECT_FAILED;
return -1;
retval = write(Ctx->client_socket, &buf[bytes_written], nbytes - bytes_written);
if (retval < 1) {
syslog(LOG_ERR, "sysdep: client_write(%d bytes) failed: %m", nbytes - bytes_written);
- cit_backtrace();
client_close();
Ctx->kill_me = KILLME_WRITE_FAILED;
return -1;
fd = fopen(fn, "a+");
if (fd == NULL) {
syslog(LOG_ERR, "%s: %m", fn);
- cit_backtrace();
exit(1);
}
fprintf(fd, "Reading BLOB: BufSize: %d ", bytes);
fd = fopen(fn, "a+");
if (fd == NULL) {
syslog(LOG_ERR, "%s: %m", fn);
- cit_backtrace();
exit(1);
}
fprintf(fd, "Read: %d BufContent: [", StrLength(Target));
fd = fopen(fn, "a+");
if (fd == NULL) {
syslog(LOG_ERR, "%s: %m", fn);
- cit_backtrace();
exit(1);
}
fprintf(fd, "Reading BLOB: BufSize: %d ",
fd = fopen(fn, "a+");
if (fd == NULL) {
syslog(LOG_ERR, "%s: %m", fn);
- cit_backtrace();
exit(1);
}
fprintf(fd, "Read: %d BufContent: [",
fd = fopen(fn, "a+");
if (fd == NULL) {
syslog(LOG_ERR, "%s: %m", fn);
- cit_backtrace();
exit(1);
}
fprintf(fd, "Read: BufSize: %d BufContent: [",
fd = fopen(fn, "a+");
if (fd == NULL) {
syslog(LOG_ERR, "%s: %m", fn);
- cit_backtrace();
exit(1);
}
pch = ChrPtr(CCC->RecvBuf.Buf);
fd = fopen(fn, "a+");
if (fd == NULL) {
syslog(LOG_ERR, "%s: %m", fn);
- cit_backtrace();
exit(1);
}
pch = ChrPtr(CCC->RecvBuf.Buf);
CtdlDestroyProtoHooks();
CtdlDestroyDeleteHooks();
CtdlDestroyXmsgHooks();
- CtdlDestroyNetprocHooks();
CtdlDestroyUserHooks();
CtdlDestroyMessageHook();
CtdlDestroyCleanupHooks();
CtdlDestroyServiceHook();
CtdlDestroyRoomHooks();
CtdlDestroySearchHooks();
- #ifdef HAVE_BACKTRACE
-/// eCrash_Uninit();
- #endif
}
{
/* Gotcha! */
syslog(LOG_ERR,
- "sysdep: killing session CC[%d] bad FD: [%d:%d] User[%s] Host[%s:%s]",
- ptr->cs_pid,
- ptr->client_socket,
- ptr->is_local_socket,
- ptr->curr_user,
- ptr->cs_host,ptr->cs_addr
+ "sysdep: killing session CC[%d] bad FD: [%d] User[%s] Host[%s:%s]",
+ ptr->cs_pid,
+ ptr->client_socket,
+ ptr->curr_user,
+ ptr->cs_host,
+ ptr->cs_addr
);
ptr->kill_me = 1;
ptr->client_socket = -1;
con->h_greeting_function = serviceptr->h_greeting_function;
con->ServiceName = serviceptr->ServiceName;
- /* Determine whether it's a local socket */
+ /* Connections on a local client are always from the same host */
if (serviceptr->sockpath != NULL) {
- con->is_local_socket = 1;
+ con->is_local_client = 1;
}
/* Set the SO_REUSEADDR socket option */