xsecurelock 1.8.0
XSecureLock is an X11 screen lock utility.
Loading...
Searching...
No Matches
saver_multiplex.c File Reference
#include <X11/X.h>
#include <X11/Xlib.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/select.h>
#include <unistd.h>
#include "../env_settings.h"
#include "../logging.h"
#include "../saver_child.h"
#include "../wait_pgrp.h"
#include "../wm_properties.h"
#include "../xscreensaver_api.h"
#include "monitors.h"

Macros

#define MAX_MONITORS   MAX_SAVERS

Functions

static void HandleSIGUSR1 (int signo)
static void HandleSIGTERM (int signo)
static void WatchSavers (void)
static void SpawnSavers (Window parent, int argc, char *const *argv)
static void KillSavers (void)
int main (int argc, char **argv)
 The main program.

Variables

static const char * saver_executable
static Display * display
static Monitor monitors [MAX_MONITORS]
static size_t num_monitors
static Window windows [MAX_MONITORS]

Macro Definition Documentation

◆ MAX_MONITORS

#define MAX_MONITORS   MAX_SAVERS

Function Documentation

◆ HandleSIGTERM()

void HandleSIGTERM ( int signo)
static

◆ HandleSIGUSR1()

void HandleSIGUSR1 ( int signo)
static

◆ KillSavers()

void KillSavers ( void )
static

◆ main()

int main ( int argc,
char ** argv )

The main program.

Usage: XSCREENSAVER_WINDOW=window_id ./saver_multiplex

Spawns spearate saver subprocesses, one on each screen.

◆ SpawnSavers()

void SpawnSavers ( Window parent,
int argc,
char *const * argv )
static

◆ WatchSavers()

void WatchSavers ( void )
static

Variable Documentation

◆ display

Display* display
static

◆ monitors

Monitor monitors[MAX_MONITORS]
static

◆ num_monitors

size_t num_monitors
static

◆ saver_executable

const char* saver_executable
static

◆ windows

Window windows[MAX_MONITORS]
static