This commit is contained in:
ed 2023-06-11 08:14:45 +00:00
parent 22cc22225a
commit 10caafa34c
4 changed files with 35 additions and 11 deletions

View file

@ -1,6 +1,6 @@
# coding: utf-8
VERSION = (1, 7, 5)
VERSION = (1, 7, 6)
CODENAME = "unlinked"
BUILD_DT = (2023, 6, 11)

View file

@ -1,13 +1,12 @@
import os
import errno
import time
import json
import shutil
import filecmp
import calendar
import errno
import filecmp
import json
import os
import shutil
import time
from .util import runcmd, Netdev
from .util import Netdev, runcmd
HAVE_CFSSL = True

View file

@ -30,6 +30,7 @@ if True: # pylint: disable=using-constant-test
from .__init__ import ANYWIN, EXE, MACOS, TYPE_CHECKING, EnvParams, unicode
from .authsrv import AuthSrv
from .cert import ensure_cert
from .mtag import HAVE_FFMPEG, HAVE_FFPROBE
from .tcpsrv import TcpSrv
from .th_srv import HAVE_PIL, HAVE_VIPS, HAVE_WEBP, ThumbSrv
@ -239,7 +240,8 @@ class SvcHub(object):
if args.ftp or args.ftps:
from .ftpd import Ftpd
self.ftpd = Ftpd(self)
self.ftpd: Optional[Ftpd] = None
Daemon(self.start_ftpd, "start_ftpd")
zms += "f" if args.ftp else "F"
if args.smb:
@ -269,6 +271,28 @@ class SvcHub(object):
self.broker = Broker(self)
def start_ftpd(self) -> None:
time.sleep(30)
if self.ftpd:
return
self.restart_ftpd()
def restart_ftpd(self) -> None:
if not hasattr(self, "ftpd"):
return
from .ftpd import Ftpd
if self.ftpd:
return # todo
if not os.path.exists(self.args.cert):
ensure_cert(self.log, self.args)
self.ftpd = Ftpd(self)
self.log("root", "started FTPd")
def thr_httpsrv_up(self) -> None:
time.sleep(1 if self.args.ign_ebind_all else 5)
expected = self.broker.num_workers * self.tcpsrv.nsrv

View file

@ -8,8 +8,8 @@ import sys
import time
from .__init__ import ANYWIN, PY2, TYPE_CHECKING, unicode
from .stolen.qrcodegen import QrCode
from .cert import gencert
from .stolen.qrcodegen import QrCode
from .util import (
E_ACCESS,
E_ADDR_IN_USE,
@ -297,6 +297,7 @@ class TcpSrv(object):
self.hub.broker.say("set_netdevs", self.netdevs)
self.hub.start_zeroconf()
gencert(self.log, self.args, self.netdevs)
self.hub.restart_ftpd()
def shutdown(self) -> None:
self.stopping = True