libthread: add threadmaybackground

Programs that want to background themselves now need
to define threadmaybackground returning 1.
This avoids a confusing (to people and debuggers)
extra parent process for all the threaded programs
that will never want to background themselves.
This commit is contained in:
Russ Cox 2020-12-30 00:10:11 -05:00
parent 5b37d91264
commit b3a20a96eb
19 changed files with 120 additions and 21 deletions

View file

@ -98,6 +98,12 @@ usage(void)
void fusereader(void*);
void watchfd(void*);
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char **argv)
{

View file

@ -137,6 +137,12 @@ usage(void)
threadexitsall("usage");
}
int
threadmaybackground(void)
{
return 1;
}
uchar vbuf[128];
extern int _threaddebuglevel;
void

View file

@ -20,6 +20,12 @@ usage(void)
threadexitsall("usage");
}
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char *argv[])
{

View file

@ -90,6 +90,12 @@ usage(void)
threadexitsall("usage");
}
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char **argv)
{

View file

@ -59,6 +59,12 @@ readCmdPart(char *file, char ***pcmd, int *pncmd)
*pncmd = ncmd;
}
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char* argv[])
{

View file

@ -51,6 +51,12 @@ fatal(char *fmt, ...)
threadexitsall("fatal");
}
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char *argv[])
{

View file

@ -121,6 +121,12 @@ checkaddress(void)
fprint(2, "warning: announce mismatch %s %s\n", udpaddr, tcpaddr);
}
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char *argv[])
{

View file

@ -26,6 +26,12 @@ makeports(Ruleset *rules[])
addport(rules[i]->port);
}
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char *argv[])
{

View file

@ -51,6 +51,12 @@ smuglogin(void)
printerrors = 0;
}
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char **argv)
{

View file

@ -155,6 +155,12 @@ notifyf(void *a, char *s)
noted(NDFLT);
}
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char *argv[])
{

View file

@ -26,6 +26,12 @@ usage(void)
threadexitsall("usage");
}
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char **argv)
{

View file

@ -23,6 +23,12 @@ usage(void)
threadexitsall("usage");
}
int
threadmaybackground(void)
{
return 1;
}
void
threadmain(int argc, char *argv[])
{