Compare commits

..

No commits in common. "rawhide" and "epel9" have entirely different histories.

5 changed files with 77 additions and 32 deletions

3
.gitignore vendored
View file

@ -1,4 +1 @@
/xtrlock-2.15.tar.bz2
/xtrlock-2.16.tar.bz2
/xtrlock-2.17.tar.bz2
/xtrlock-2.18.tar.bz2

View file

@ -1 +1 @@
SHA512 (xtrlock-2.18.tar.bz2) = 713e4d33f6f624c3373e05be262ed554ddef644dadd04211046ece0288fcbc8ebc483e344df370bc4a6382b242cac949a1eb59a6c323e76f1ae49dc2c9891576
SHA512 (xtrlock-2.15.tar.bz2) = fe22201c49189719a9da8321d04f458cd4fecc034ddfa965eceafee1cf00388dbaaffbbff6e6b0a3c8df378146a466348ee68cf4966004e7539e6e5848a9006b

View file

@ -0,0 +1,42 @@
diff --git a/xtrlock.c b/xtrlock.c
index f48267b..257388b 100644
--- a/xtrlock.c
+++ b/xtrlock.c
@@ -46,6 +46,10 @@
#include <X11/extensions/XInput2.h>
#endif
+#ifdef LIBCAP
+#include <sys/capability.h>
+#endif
+
#include "lock.bitmap"
#include "mask.bitmap"
#include "patchlevel.h"
@@ -118,6 +122,9 @@ int main(int argc, char **argv){
#endif
struct timeval tv;
int tvt, gs;
+#ifdef LIBCAP
+ cap_t no_cap;
+#endif
if (getenv("WAYLAND_DISPLAY"))
fprintf(stderr,"WARNING: Wayland X server detected: xtrlock"
@@ -156,6 +163,13 @@ int main(int argc, char **argv){
and we don't need root privileges any longer. --marekm */
if (setuid(getuid())) { perror("setuid"); exit(1); }
+ /* drop capabilities if he have some */
+#ifdef LIBCAP
+ if (!(no_cap = cap_init())) { perror("cap_init"); exit(1); }
+ if (cap_set_proc(no_cap)) { perror("cap_set_proc"); exit(1); }
+ cap_free(no_cap);
+#endif
+
if (strlen(pw->pw_passwd) < 13) {
fputs("password entry has no pwd\n",stderr); exit(1);
}
--
2.39.2

View file

@ -0,0 +1,29 @@
diff --git a/Makefile.noimake b/Makefile.noimake
index 460cd67..0c26d93 100644
--- a/Makefile.noimake
+++ b/Makefile.noimake
@@ -13,17 +13,20 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-LDLIBS=-lX11
+LDLIBS=-lX11 -lcrypt
CC=gcc
CFLAGS=-Wall
-INSTALL=install
+INSTALL=install -p
+PREFIX=/usr
+BINDIR=$(PREFIX)/bin
+MANDIR=$(PREFIX)/share/man
xtrlock: xtrlock.o
xtrlock.o: xtrlock.c lock.bitmap mask.bitmap patchlevel.h
install: xtrlock
- $(INSTALL) -c -m 755 xtrlock /usr/bin/X11
+ $(INSTALL) -D -c -m 755 xtrlock $(DESTDIR)$(BINDIR)/xtrlock
install.man:
- $(INSTALL) -c -m 644 xtrlock.man /usr/man/man1/xtrlock.1x
+ $(INSTALL) -D -c -m 644 xtrlock.man $(DESTDIR)$(MANDIR)/man1/xtrlock.1x

View file

@ -1,6 +1,6 @@
Name: xtrlock
URL: https://salsa.debian.org/debian/xtrlock
Version: 2.18
Version: 2.15
Release: 3%{?dist}
License: GPL-3.0-or-later
Summary: Minimal X display lock program
@ -10,6 +10,10 @@ BuildRequires: gcc
BuildRequires: libX11-devel
BuildRequires: libxcrypt-devel
BuildRequires: libcap-devel
# https://salsa.debian.org/debian/xtrlock/-/merge_requests/3
Patch0: xtrlock-2.15-distro-fix.patch
# https://salsa.debian.org/debian/xtrlock/-/merge_requests/2
Patch1: xtrlock-2.15-capabilities-drop.patch
%description
Xtrlock is a very minimal X display lock program. It doesn't
@ -35,33 +39,6 @@ access control lists.
%{_mandir}/man1/%{name}.1x*
%changelog
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 2.18-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 2.18-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Fri Jan 02 2026 Jaroslav Škarvada <jskarvad@redhat.com> - 2.18-1
- New version
Resolves: rhbz#2416923
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.17-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Mon Jun 23 2025 Jaroslav Škarvada <jskarvad@redhat.com> - 2.17-1
- New version
Resolves: rhbz#2369910
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.16-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Mon Jan 6 2025 Jaroslav Škarvada <jskarvad@redhat.com> - 2.16-1
- New version
Resolves: rhbz#2335525
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.15-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.15-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild