opnsense-ports/ftp/wzdftpd/files/patch-wzdftpd_wzd__ServerThread.c
Franco Fichtner f7bcd85e11 */*: sync with upstream
Taken from: FreeBSD
2023-02-14 22:03:33 +01:00

25 lines
997 B
C

--- wzdftpd/wzd_ServerThread.c.orig 2023-02-11 11:33:03 UTC
+++ wzdftpd/wzd_ServerThread.c
@@ -934,7 +934,7 @@ static void server_login_accept(wzd_context_t * contex
out_err(LEVEL_CRITICAL,"Unable to create thread\n");
return;
}
- context->pid_child = (unsigned long)WZD_THREAD_VOID(&thread);
+ context->pid_child = (pthread_t)WZD_THREAD_VOID(&thread);
wzd_thread_attr_destroy(&thread_attr); /* not needed anymore */
}
@@ -1624,10 +1624,12 @@ void serverMainThreadCleanup(int retcode)
{
ListElmt * elmnt;
wzd_context_t * loop_context;
+ wzd_thread_t child;
for (elmnt=list_head(context_list); elmnt!=NULL; elmnt=list_next(elmnt))
{
if ((loop_context = list_data(elmnt))) {
- wzd_thread_cancel(loop_context->pid_child);
+ child._t = loop_context->pid_child;
+ wzd_thread_cancel(&child);
#ifdef WIN32
/** \todo remove this when wzd_thread_cancel is implemented on windows */
loop_context->exitclient = 1;