On Sun, Aug 14, 2022 at 01:05:49PM +0200, BESSOT Jean-Michel wrote:
> Hello
> 
> Xlock do not take my password since my last snapshot update (well there is
> time since the one before).
> 
> I use a bépo keyboard so kdb is set with fr dvorak
> 

Hi,

can you try the patch below (already tested by Denis, who provided a
hint on the issue) ?

(get the xenocara tree, apply in app/xlockmore using patch(1) and
rebuild xlockmore by running the following commands in
/usr/xenocara/app/xlockmore :

doas make -f Makefile.bsd-wrapper obj
doas make -f Makefile.bsd-wrapper build

Index: xlock/passwd.c
===================================================================
RCS file: /cvs/OpenBSD/xenocara/app/xlockmore/xlock/passwd.c,v
retrieving revision 1.3
diff -u -r1.3 passwd.c
--- xlock/passwd.c      26 Jun 2022 14:09:51 -0000      1.3
+++ xlock/passwd.c      22 Aug 2022 21:35:49 -0000
@@ -1279,16 +1279,19 @@
 #ifdef USE_PRIVSEP
        char    *pass;
        char    *style;
+       int      authok;
 
        /* buffer can be in the form style:pass */
        if ((pass = strchr(buffer, ':')) != NULL) {
            *pass++ = '\0';
            style = buffer;
-       } else {
-           pass = buffer;
-           style = NULL;
-       }
-       return priv_pw_check(user, pass, style);
+           authok = priv_pw_check(user, style, pass);
+           *--pass = ':';
+       } else 
+           authok = 0;
+       pass = buffer;
+       style = NULL;
+       return (authok || priv_pw_check(user, pass, style));
 #elif defined(BSD_AUTH)
        char       *pass;
        char       *style;


-- 
Matthieu Herrb

Reply via email to