Bump to version 2018.02.26

This commit is contained in:
NADAL Jean-Baptiste
2019-04-16 17:05:19 +02:00
parent daa0aad546
commit c7be80baf3
10 changed files with 228 additions and 135 deletions

View File

@@ -30,11 +30,12 @@
#include "include/ucix.h"
#include "include/autofs.h"
int fdin = 0; /* data coming out of the kernel */
int fdout = 0;/* data going into the kernel */
dev_t dev;
static int fdin = 0; /* data coming out of the kernel */
static int fdout = 0;/* data going into the kernel */
static bool term = false;
static dev_t dev;
time_t uci_timeout;
static time_t uci_timeout;
char uci_path[32];
static void umount_autofs(void)
@@ -147,7 +148,7 @@ static int autofs_in(union autofs_v5_packet_union *pkt)
fds[0].fd = fdout;
fds[0].events = POLLIN;
while(1)
while(!term)
{
res = poll(fds, 1, -1);
@@ -163,6 +164,7 @@ static int autofs_in(union autofs_v5_packet_union *pkt)
return fullread(pkt, sizeof(*pkt));
}
}
return 1;
}
pid_t autofs_safe_fork(void)
@@ -171,24 +173,29 @@ pid_t autofs_safe_fork(void)
if(!pid)
{
close(fdin);
close(fdout);
close(fdout);
}
return pid;
}
static void autofs_cleanup_handler(void)
static void autofs_cleanup(void)
{
close(fdin);
close(fdout);
umount_autofs();
}
static void autofs_end_handler(int sig)
{
term = true;
}
static void autofs_init(void)
{
int kproto_version;
char *p;
struct uci_context *ctx;
signal_init(autofs_cleanup_handler);
signal_init(autofs_end_handler);
ctx = ucix_init("mountd");
uci_timeout = ucix_get_option_int(ctx, "mountd", "mountd", "timeout", 60);
p = ucix_get_option(ctx, "mountd", "mountd", "path");
@@ -226,7 +233,7 @@ int autofs_loop(void)
{
chdir("/");
autofs_init();
while(1)
while(!term)
{
union autofs_v5_packet_union pkt;
if(autofs_in(&pkt))
@@ -240,7 +247,7 @@ int autofs_loop(void)
log_printf("unknown packet type %d\n", pkt.hdr.type);
poll(0, 0, 200);
}
umount_autofs();
autofs_cleanup();
log_printf("... quitting\n");
closelog();
return 0;