Compare commits
No commits in common. "a34d8fb4327bbb1afd92e7527c53fcaad547a495" and "325581b935c74c321062d1f6873704411bcc5071" have entirely different histories.
a34d8fb432
...
325581b935
6 changed files with 53 additions and 42 deletions
1
LICENSE
1
LICENSE
|
@ -4,7 +4,6 @@ MIT/X Consortium License
|
||||||
© 2014 Dimitris Papastamos <sin@2f30.org>
|
© 2014 Dimitris Papastamos <sin@2f30.org>
|
||||||
© 2006-2014 Anselm R Garbe <anselm@garbe.us>
|
© 2006-2014 Anselm R Garbe <anselm@garbe.us>
|
||||||
© 2014-2016 Laslo Hunhold <dev@frign.de>
|
© 2014-2016 Laslo Hunhold <dev@frign.de>
|
||||||
© 2016-2023 Hiltjo Posthuma <hiltjo@codemadness.org>
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
|
57
Makefile
57
Makefile
|
@ -6,41 +6,56 @@ include config.mk
|
||||||
SRC = slock.c ${COMPATSRC}
|
SRC = slock.c ${COMPATSRC}
|
||||||
OBJ = ${SRC:.c=.o}
|
OBJ = ${SRC:.c=.o}
|
||||||
|
|
||||||
all: slock
|
all: options slock
|
||||||
|
|
||||||
|
options:
|
||||||
|
@echo slock build options:
|
||||||
|
@echo "CFLAGS = ${CFLAGS}"
|
||||||
|
@echo "LDFLAGS = ${LDFLAGS}"
|
||||||
|
@echo "CC = ${CC}"
|
||||||
|
|
||||||
.c.o:
|
.c.o:
|
||||||
${CC} -c ${CFLAGS} $<
|
@echo CC $<
|
||||||
|
@${CC} -c ${CFLAGS} $<
|
||||||
|
|
||||||
${OBJ}: config.h config.mk arg.h util.h
|
${OBJ}: config.h config.mk arg.h util.h
|
||||||
|
|
||||||
config.h:
|
config.h:
|
||||||
cp config.def.h $@
|
@echo creating $@ from config.def.h
|
||||||
|
@cp config.def.h $@
|
||||||
|
|
||||||
slock: ${OBJ}
|
slock: ${OBJ}
|
||||||
${CC} -o $@ ${OBJ} ${LDFLAGS}
|
@echo CC -o $@
|
||||||
|
@${CC} -o $@ ${OBJ} ${LDFLAGS}
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f slock ${OBJ} slock-${VERSION}.tar.gz
|
@echo cleaning
|
||||||
|
@rm -f slock ${OBJ} slock-${VERSION}.tar.gz
|
||||||
|
|
||||||
dist: clean
|
dist: clean
|
||||||
mkdir -p slock-${VERSION}
|
@echo creating dist tarball
|
||||||
cp -R LICENSE Makefile README slock.1 config.mk \
|
@mkdir -p slock-${VERSION}
|
||||||
${SRC} config.def.h arg.h util.h slock-${VERSION}
|
@cp -R LICENSE Makefile README slock.1 config.mk \
|
||||||
tar -cf slock-${VERSION}.tar slock-${VERSION}
|
${SRC} explicit_bzero.c config.def.h arg.h util.h slock-${VERSION}
|
||||||
gzip slock-${VERSION}.tar
|
@tar -cf slock-${VERSION}.tar slock-${VERSION}
|
||||||
rm -rf slock-${VERSION}
|
@gzip slock-${VERSION}.tar
|
||||||
|
@rm -rf slock-${VERSION}
|
||||||
|
|
||||||
install: all
|
install: all
|
||||||
mkdir -p ${DESTDIR}${PREFIX}/bin
|
@echo installing executable file to ${DESTDIR}${PREFIX}/bin
|
||||||
cp -f slock ${DESTDIR}${PREFIX}/bin
|
@mkdir -p ${DESTDIR}${PREFIX}/bin
|
||||||
chmod 755 ${DESTDIR}${PREFIX}/bin/slock
|
@cp -f slock ${DESTDIR}${PREFIX}/bin
|
||||||
chmod u+s ${DESTDIR}${PREFIX}/bin/slock
|
@chmod 755 ${DESTDIR}${PREFIX}/bin/slock
|
||||||
mkdir -p ${DESTDIR}${MANPREFIX}/man1
|
@chmod u+s ${DESTDIR}${PREFIX}/bin/slock
|
||||||
sed "s/VERSION/${VERSION}/g" <slock.1 >${DESTDIR}${MANPREFIX}/man1/slock.1
|
@echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
|
||||||
chmod 644 ${DESTDIR}${MANPREFIX}/man1/slock.1
|
@mkdir -p ${DESTDIR}${MANPREFIX}/man1
|
||||||
|
@sed "s/VERSION/${VERSION}/g" <slock.1 >${DESTDIR}${MANPREFIX}/man1/slock.1
|
||||||
|
@chmod 644 ${DESTDIR}${MANPREFIX}/man1/slock.1
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
rm -f ${DESTDIR}${PREFIX}/bin/slock
|
@echo removing executable file from ${DESTDIR}${PREFIX}/bin
|
||||||
rm -f ${DESTDIR}${MANPREFIX}/man1/slock.1
|
@rm -f ${DESTDIR}${PREFIX}/bin/slock
|
||||||
|
@echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
|
||||||
|
@rm -f ${DESTDIR}${MANPREFIX}/man1/slock.1
|
||||||
|
|
||||||
.PHONY: all clean dist install uninstall
|
.PHONY: all options clean dist install uninstall
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# slock version
|
# slock version
|
||||||
VERSION = 1.5
|
VERSION = 1.4
|
||||||
|
|
||||||
# Customize below to fit your system
|
# Customize below to fit your system
|
||||||
|
|
||||||
|
@ -27,3 +27,6 @@ COMPATSRC = explicit_bzero.c
|
||||||
#CPPFLAGS = -DVERSION=\"${VERSION}\" -D_BSD_SOURCE -D_NETBSD_SOURCE
|
#CPPFLAGS = -DVERSION=\"${VERSION}\" -D_BSD_SOURCE -D_NETBSD_SOURCE
|
||||||
# On OpenBSD set COMPATSRC to empty
|
# On OpenBSD set COMPATSRC to empty
|
||||||
#COMPATSRC =
|
#COMPATSRC =
|
||||||
|
|
||||||
|
# compiler and linker
|
||||||
|
CC = cc
|
||||||
|
|
26
slock.1
26
slock.1
|
@ -1,6 +1,5 @@
|
||||||
.Dd October 6, 2023
|
.Dd 2016-08-23
|
||||||
.Dt SLOCK 1
|
.Dt SLOCK 1
|
||||||
.Os
|
|
||||||
.Sh NAME
|
.Sh NAME
|
||||||
.Nm slock
|
.Nm slock
|
||||||
.Nd simple X screen locker
|
.Nd simple X screen locker
|
||||||
|
@ -10,36 +9,31 @@
|
||||||
.Op Ar cmd Op Ar arg ...
|
.Op Ar cmd Op Ar arg ...
|
||||||
.Sh DESCRIPTION
|
.Sh DESCRIPTION
|
||||||
.Nm
|
.Nm
|
||||||
is a simple X screen locker.
|
is a simple X screen locker. If provided,
|
||||||
If provided,
|
.Ar cmd Op Ar arg ...
|
||||||
.Ar cmd
|
|
||||||
is executed after the screen has been locked.
|
is executed after the screen has been locked.
|
||||||
.Pp
|
.Sh OPTIONS
|
||||||
The options are as follows:
|
|
||||||
.Bl -tag -width Ds
|
.Bl -tag -width Ds
|
||||||
.It Fl v
|
.It Fl v
|
||||||
Print version information to stdout and exit.
|
Print version information to stdout and exit.
|
||||||
.El
|
.El
|
||||||
.Sh EXIT STATUS
|
|
||||||
.Ex -std
|
|
||||||
.Sh EXAMPLES
|
|
||||||
$
|
|
||||||
.Nm
|
|
||||||
/usr/sbin/s2ram
|
|
||||||
.Sh SECURITY CONSIDERATIONS
|
.Sh SECURITY CONSIDERATIONS
|
||||||
To make sure a locked screen can not be bypassed by switching VTs
|
To make sure a locked screen can not be bypassed by switching VTs
|
||||||
or killing the X server with Ctrl+Alt+Backspace, it is recommended
|
or killing the X server with Ctrl+Alt+Backspace, it is recommended
|
||||||
to disable both in
|
to disable both in
|
||||||
.Xr xorg.conf 5
|
.Xr xorg.conf 5
|
||||||
for maximum security:
|
for maximum security:
|
||||||
.Bd -literal
|
.Bd -literal -offset left
|
||||||
Section "ServerFlags"
|
Section "ServerFlags"
|
||||||
Option "DontVTSwitch" "True"
|
Option "DontVTSwitch" "True"
|
||||||
Option "DontZap" "True"
|
Option "DontZap" "True"
|
||||||
EndSection
|
EndSection
|
||||||
.Ed
|
.Ed
|
||||||
|
.Sh EXAMPLES
|
||||||
|
$
|
||||||
|
.Nm
|
||||||
|
/usr/sbin/s2ram
|
||||||
.Sh CUSTOMIZATION
|
.Sh CUSTOMIZATION
|
||||||
.Nm
|
.Nm
|
||||||
can be customized by creating a custom config.h from config.def.h and
|
can be customized by creating a custom config.h from config.def.h and
|
||||||
(re)compiling the source code.
|
(re)compiling the source code. This keeps it fast, secure and simple.
|
||||||
This keeps it fast, secure and simple.
|
|
||||||
|
|
4
slock.c
4
slock.c
|
@ -177,7 +177,7 @@ readpw(Display *dpy, struct xrandr *rr, struct lock **locks, int nscreens,
|
||||||
break;
|
break;
|
||||||
case XK_BackSpace:
|
case XK_BackSpace:
|
||||||
if (len)
|
if (len)
|
||||||
passwd[--len] = '\0';
|
passwd[len--] = '\0';
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if (num && !iscntrl((int)buf[0]) &&
|
if (num && !iscntrl((int)buf[0]) &&
|
||||||
|
@ -317,7 +317,7 @@ main(int argc, char **argv) {
|
||||||
|
|
||||||
ARGBEGIN {
|
ARGBEGIN {
|
||||||
case 'v':
|
case 'v':
|
||||||
puts("slock-"VERSION);
|
fprintf(stderr, "slock-"VERSION"\n");
|
||||||
return 0;
|
return 0;
|
||||||
default:
|
default:
|
||||||
usage();
|
usage();
|
||||||
|
|
Loading…
Reference in a new issue