ZJRI2OJNH6Q6ZS4FXWDQBHSECRO3TK3W4EIJ3UIWXNFDMI6XISYQC MZFADT7SUWRLK3MWQUWOKKYXEGGXAUD43KBXYT2T327X2WP4NDVQC OXU4CGLDG44NLRFO5HDX23JSOKIMQ6OXEPWUNWCZZ4YWX3THOS5AC QNWZFDUGC4UT6B6BOCKAPDTLNMU5V5GAENSMYWZX6D4URBYIIWZAC WXFIZKTKYWQAT7EQ6KZKUTVDICW6IHX3J45T2JPZ43YLLLYBAZXAC NLX73UKSI67TAREMATK6FIEOTMG25OT7O5SAJQNDCELQWTQK56PQC CSY27FWPSKRAT37RJNIEQRVDNIO6L4QLENSPOE3XLIGGQZDETGRAC 472S5NCGFN22WDGFPQE3VVLPLIIZAUMC6EBUPV2CXKM7A2OV2XNAC writeEnv :: String -> --SERVER_IPString -> --UDP2RAW_PWDString -> --UDP2SPEEDER_PWDRawMode ->IO ()writeEnv ip udp2raw_pwd udpspeeder_pwd raw = dowriteFile "/run/udp2raw/.env" ("SERVER_IP=" ++ ip ++ "\n"++ "UDP2RAW_PWD=" ++ udp2raw_pwd ++ "\n"++ "UDPSPEEDER_PWD=" ++ udpspeeder_pwd ++ "\n"++ "RAW_MODE=" ++ rawModeToArg raw ++ "\n"++ "PORT=" ++ show (fromMaybe 443 (getPort raw)))
writeEnv :: Env ->String -> --UDP2RAW_PWDString -> --UDP2SPEEDER_PWDString -> --filenameIO ()writeEnv env udp2raw_pwd udpspeeder_pwd file = dowrite file ("SERVER_IP=" ++ ip env ++ "\n"++ "UDP2RAW_PWD=" ++ udp2raw_pwd ++ "\n"++ "UDPSPEEDER_PWD=" ++ udpspeeder_pwd ++ "\n"++ "RAW_MODE=" ++ rawModeToArg (rawMode env) ++ "\n"++ "PORT=" ++ show (fromMaybe 443 (getPort (rawMode env))))
let envVal = either (const Nothing) Just eEnvacceptThread <- forkIO $ acceptLoop sock stopFlag configFile envVal
acceptThread <- forkIO $ acceptLoop sock stopFlag configFile environment