removed useless chars, prepared release
This commit is contained in:
parent
c0fdcb8afc
commit
1460b14f45
18
LICENSE
18
LICENSE
|
@ -6,16 +6,16 @@ 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"),
|
||||||
to deal in the Software without restriction, including without limitation
|
to deal in the Software without restriction, including without limitation
|
||||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
and/or sell copies of the Software, and to permit persons to whom the
|
and/or sell copies of the Software, and to permit persons to whom the
|
||||||
Software is furnished to do so, subject to the following conditions:
|
Software is furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in
|
The above copyright notice and this permission notice shall be included in
|
||||||
all copies or substantial portions of the Software.
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
DEALINGS IN THE SOFTWARE.
|
DEALINGS IN THE SOFTWARE.
|
||||||
|
|
4
README
4
README
|
@ -13,8 +13,8 @@ Installation
|
||||||
Edit config.mk to match your local setup (slock is installed into
|
Edit config.mk to match your local setup (slock is installed into
|
||||||
the /usr/local namespace by default).
|
the /usr/local namespace by default).
|
||||||
|
|
||||||
Afterwards enter the following command to build and install slock (if
|
Afterwards enter the following command to build and install slock
|
||||||
necessary as root):
|
(if necessary as root):
|
||||||
|
|
||||||
make clean install
|
make clean install
|
||||||
|
|
||||||
|
|
14
slock.c
14
slock.c
|
@ -23,7 +23,7 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void
|
void
|
||||||
eprint(const char *errstr, ...) {
|
die(const char *errstr, ...) {
|
||||||
va_list ap;
|
va_list ap;
|
||||||
|
|
||||||
va_start(ap, errstr);
|
va_start(ap, errstr);
|
||||||
|
@ -39,7 +39,7 @@ get_password() { /* only run as root */
|
||||||
struct passwd *pw;
|
struct passwd *pw;
|
||||||
|
|
||||||
if(geteuid() != 0)
|
if(geteuid() != 0)
|
||||||
eprint("slock: cannot retrieve password entry (make sure to suid slock)\n");
|
die("slock: cannot retrieve password entry (make sure to suid slock)\n");
|
||||||
pw = getpwuid(getuid());
|
pw = getpwuid(getuid());
|
||||||
endpwent();
|
endpwent();
|
||||||
rval = pw->pw_passwd;
|
rval = pw->pw_passwd;
|
||||||
|
@ -55,7 +55,7 @@ get_password() { /* only run as root */
|
||||||
|
|
||||||
/* drop privileges */
|
/* drop privileges */
|
||||||
if(setgid(pw->pw_gid) < 0 || setuid(pw->pw_uid) < 0)
|
if(setgid(pw->pw_gid) < 0 || setuid(pw->pw_uid) < 0)
|
||||||
eprint("slock: cannot drop privileges\n");
|
die("slock: cannot drop privileges\n");
|
||||||
return rval;
|
return rval;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -81,16 +81,16 @@ main(int argc, char **argv) {
|
||||||
XSetWindowAttributes wa;
|
XSetWindowAttributes wa;
|
||||||
|
|
||||||
if((argc == 2) && !strcmp("-v", argv[1]))
|
if((argc == 2) && !strcmp("-v", argv[1]))
|
||||||
eprint("slock-"VERSION", © 2006-2008 Anselm R Garbe\n");
|
die("slock-"VERSION", © 2006-2008 Anselm R Garbe\n");
|
||||||
else if(argc != 1)
|
else if(argc != 1)
|
||||||
eprint("usage: slock [-v]\n");
|
die("usage: slock [-v]\n");
|
||||||
|
|
||||||
#ifndef HAVE_BSD_AUTH
|
#ifndef HAVE_BSD_AUTH
|
||||||
pws = get_password();
|
pws = get_password();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if(!(dpy = XOpenDisplay(0)))
|
if(!(dpy = XOpenDisplay(0)))
|
||||||
eprint("slock: cannot open display\n");
|
die("slock: cannot open display\n");
|
||||||
screen = DefaultScreen(dpy);
|
screen = DefaultScreen(dpy);
|
||||||
root = RootWindow(dpy, screen);
|
root = RootWindow(dpy, screen);
|
||||||
|
|
||||||
|
@ -144,13 +144,11 @@ main(int argc, char **argv) {
|
||||||
switch(ksym) {
|
switch(ksym) {
|
||||||
case XK_Return:
|
case XK_Return:
|
||||||
passwd[len] = 0;
|
passwd[len] = 0;
|
||||||
|
|
||||||
#ifdef HAVE_BSD_AUTH
|
#ifdef HAVE_BSD_AUTH
|
||||||
running = !auth_userokay(getlogin(), NULL, "auth-xlock", passwd);
|
running = !auth_userokay(getlogin(), NULL, "auth-xlock", passwd);
|
||||||
#else
|
#else
|
||||||
running = strcmp(crypt(passwd, pws), pws);
|
running = strcmp(crypt(passwd, pws), pws);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (running != 0)
|
if (running != 0)
|
||||||
XBell(dpy, 100);
|
XBell(dpy, 100);
|
||||||
len = 0;
|
len = 0;
|
||||||
|
|
Loading…
Reference in New Issue