static void revoke_privileges(ProxyContext * const proxy_context) { #ifdef DEBUG (void) proxy_context; #else alt_arc4random_stir(); init_tz(); (void) strerror(ENOENT); if (proxy_context->user_dir != NULL) { if (chdir(proxy_context->user_dir) != 0 || chroot(proxy_context->user_dir) != 0 || chdir("/") != 0) { logger(proxy_context, LOG_ERR, "Unable to chroot to [%s]", proxy_context->user_dir); exit(1); } } if (proxy_context->user_id != (uid_t) 0) { if (setgid(proxy_context->user_group) != 0 || setegid(proxy_context->user_group) != 0 || setuid(proxy_context->user_id) != 0 || seteuid(proxy_context->user_id) != 0) { logger(proxy_context, LOG_ERR, "Unable to switch to user id [%lu]", (unsigned long) proxy_context->user_id); exit(1); } } #endif }
static void revoke_privileges(ProxyContext * const proxy_context) { (void) proxy_context; init_locale(); init_tz(); (void) strerror(ENOENT); #ifndef DEBUG salsa20_random_stir(); # ifndef _WIN32 if (proxy_context->user_dir != NULL) { if (chdir(proxy_context->user_dir) != 0 || chroot(proxy_context->user_dir) != 0 || chdir("/") != 0) { logger(proxy_context, LOG_ERR, "Unable to chroot to [%s]", proxy_context->user_dir); exit(1); } } if (sandboxes_app() != 0) { logger_noformat(proxy_context, LOG_ERR, "Unable to sandbox the main process"); exit(1); } if (proxy_context->user_id != (uid_t) 0) { if (setgid(proxy_context->user_group) != 0 || setegid(proxy_context->user_group) != 0 || setuid(proxy_context->user_id) != 0 || seteuid(proxy_context->user_id) != 0) { logger(proxy_context, LOG_ERR, "Unable to switch to user id [%lu]", (unsigned long) proxy_context->user_id); exit(1); } } # endif #endif }
Logstalgia::Logstalgia(const std::string& logfile) : SDLApp() { info = false; paused = false; retarget = false; next = false; this->logfile = logfile; spawn_delay=0; highscore = 0; uimessage_timer=0.0f; ipSummarizer = 0; mintime = settings.sync ? time(0) : settings.start_time; seeklog = 0; streamlog = 0; if(logfile.empty()) { throw SDLAppException("no file supplied"); } if(logfile == "-") { streamlog = new StreamLog(); settings.disable_progress = true; } else { try { seeklog = new SeekLog(logfile); } catch(SeekLogException& exception) { throw SDLAppException("unable to read log file"); } } total_space = display.height - 40; remaining_space = total_space - 2; total_entries=0; background = vec3(0.0, 0.0, 0.0); fontLarge = fontmanager.grab("FreeSerif.ttf", 42); fontMedium = fontmanager.grab("FreeMonoBold.ttf", 16); fontBall = fontmanager.grab("FreeMonoBold.ttf", 16); fontSmall = fontmanager.grab("FreeMonoBold.ttf", settings.font_size); fontLarge.dropShadow(true); fontMedium.dropShadow(true); fontSmall.dropShadow(true); balltex = texturemanager.grab("ball.tga"); glowtex = texturemanager.grab("glow.tga"); infowindow = TextArea(fontSmall); mousehide_timeout = 0.0f; runtime = 0.0; frameExporter = 0; framecount = 0; frameskip = 0; fixed_tick_rate = 0.0; accesslog = 0; font_alpha = 1.0; take_screenshot = false; //every 60 minutes seconds blank text for 60 seconds screen_blank_interval = 3600.0; screen_blank_period = 60.0; screen_blank_elapsed = 0.0; init_tz(); }