URI:
       Add utmp string in error messages - utmp - simple login manager  
  HTML git clone git://git.suckless.org/utmp
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit 8fcc4a561cbdbfb4bf67a2b3f7574d35b7c10e49
   DIR parent 81d0a50c7392fc4c985b0e71e708ccdd3815441a
  HTML Author: Roberto E. Vargas Caballero <k0ga@shike2.com>
       Date:   Sun, 22 Feb 2015 16:30:21 +0000
       
       Add utmp string in error messages
       
       Utmp may be executed from st, and sometimes is difficult to see
       who generate the error, so this patch helps.
       
       Diffstat:
         M bsd.c                               |       6 +++---
         M posix.c                             |      10 +++++-----
         M utmp.c                              |       6 +++---
       
       3 files changed, 11 insertions(+), 11 deletions(-)
       ---
   DIR diff --git a/bsd.c b/bsd.c
       @@ -26,17 +26,17 @@ addutmp(void)
                        host = "-";
        
                if (strlen(pw->pw_name) > sizeof(utmp.ut_name))
       -                die("incorrect username %s", pw->pw_name);
       +                die("utmp:incorrect username %s", pw->pw_name);
        
                if ((pts = ttyname(STDIN_FILENO)) == NULL)
       -                die("error getting pty name:%s", strerror(errno));
       +                die("utmp:error getting pty name:%s", strerror(errno));
        
                for (cp = pts + strlen(pts) - 1; isdigit(*cp); --cp)
                        /* nothing */;
        
                ptyid = atoi(++cp);
                if (ptyid > 999 || strlen(pts + 5) > sizeof(utmp.ut_line))
       -                die("Incorrect pts name %s\n", pts);
       +                die("utmp:Incorrect pts name %s\n", pts);
        
                /* remove /dev/ from pts */
                strncpy(utmp.ut_line, pts + 5, sizeof(utmp.ut_line));
   DIR diff --git a/posix.c b/posix.c
       @@ -70,17 +70,17 @@ addutmp(void)
                char *pts, *cp, buf[5] = {'x'};
        
                if (strlen(pw->pw_name) > sizeof(utmp.ut_user))
       -                die("incorrect username %s", pw->pw_name);
       +                die("utmp:incorrect username %s", pw->pw_name);
        
                if ((pts = ttyname(STDIN_FILENO)) == NULL)
       -                die("error getting pty name\n");
       +                die("utmp:error getting pty name\n");
        
                for (cp = pts + strlen(pts) - 1; isdigit(*cp); --cp)
                        /* nothing */;
        
                ptyid = atoi(++cp);
                if (ptyid > 999 || strlen(pts + 5) > sizeof(utmp.ut_line))
       -                die("Incorrect pts name %s\n", pts);
       +                die("utmp:Incorrect pts name %s\n", pts);
                sprintf(buf + 1, "%03d", ptyid);
                strncpy(utmp.ut_id, buf, 4);
        
       @@ -99,7 +99,7 @@ addutmp(void)
        
                setegid(egid);
                if(!pututxline(&utmp))
       -                die("error adding utmp entry:%s", strerror(errno));
       +                die("utmp:error adding utmp entry:%s", strerror(errno));
                setegid(gid);
                endutxent();
        }
       @@ -115,7 +115,7 @@ delutmp(void)
                        r->ut_tv.tv_usec = r->ut_tv.tv_sec = 0;
                        setgid(egid);
                        if (!pututxline(r))
       -                        die("error removing utmp entry:%s", strerror(errno));
       +                        die("utmp:error removing utmp entry:%s", strerror(errno));
                        setgid(gid);
                }
                endutxent();
   DIR diff --git a/utmp.c b/utmp.c
       @@ -46,9 +46,9 @@ main(int argc, char *argv[])
                errno = 0;
                if ((pw = getpwuid(uid = getuid())) == NULL) {
                        if(errno)
       -                        die("getpwuid:%s", strerror(errno));
       +                        die("utmp:getpwuid:%s", strerror(errno));
                        else
       -                        die("who are you?");
       +                        die("utmp:who are you?");
                }
        
                setenv("LOGNAME", pw->pw_name, 1);
       @@ -83,7 +83,7 @@ main(int argc, char *argv[])
                        sigprocmask(SIG_UNBLOCK, &set, NULL);
        
                        if (wait(&status) == -1)
       -                        perror("error waiting child");
       +                        perror("utmp:error waiting child");
                        delutmp();
                }
                return (WIFEXITED(status)) ? WEXITSTATUS(status) : EXIT_FAILURE;