shadow/libmisc
Alejandro Colomar 1d7d94ed7d Simplify is_my_tty()
This commit will serve to document why we shouldn't worry about the
truncation in the call to strlcpy(3).  Since we have one more byte in
tmptty than in full_tty, truncation will produce a string that is at
least one byte longer than full_tty.  Such a string could never compare
equal, so we're actually handling the truncation in a clever way.  Maybe
too clever, but that's why I'm documenting it here.

Now, about the simplification itself:

Since we made sure that both full_tty and tmptty are null-terminated, we
can call strcmp(3) instead of strncmp(3).  We can also simplify the
return logic avoiding one branch.

Cc: Paul Eggert <eggert@cs.ucla.edu>
Signed-off-by: Alejandro Colomar <alx@kernel.org>
Reviewed-by: Iker Pedrosa <ipedrosa@redhat.com>
2023-03-28 13:00:38 +02:00
..
.indent.pro
addgrps.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
age.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
agetpass.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
alloc.c libmisc: Add safer allocation functions 2023-02-23 20:28:43 -06:00
audit_help.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
basename.c Fix null dereference in basename 2023-03-27 10:10:37 -05:00
bit.c Add bit manipulation functions 2023-01-30 18:24:15 +01:00
btrfs.c Declare read-only data const 2022-08-06 11:27:56 -05:00
chkname.c shadow: use relaxed usernames 2022-09-02 20:27:14 -05:00
chkname.h Update licensing info 2021-12-23 19:36:50 -06:00
chowndir.c Avoid races in chown_tree() 2022-08-17 12:34:01 -05:00
chowntty.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
cleanup_group.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
cleanup_user.c Fix typos 2023-02-16 13:23:08 -06:00
cleanup.c Update licensing info 2021-12-23 19:36:50 -06:00
console.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
copydir.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
csrand.c Unoptimize the higher part of the domain of csrand_uniform() 2023-01-30 18:24:15 +01:00
date_to_str.c Fix crash with large timestamps 2023-03-28 13:00:38 +02:00
entry.c libmisc: Move xmalloc.c to alloc.c 2023-02-23 20:28:43 -06:00
env.c Fix use-after-free of pointer after realloc(3) 2023-02-23 20:28:43 -06:00
failure.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
failure.h Disable utmpx permanently 2022-12-22 10:31:43 +01:00
find_new_gid.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
find_new_sub_gids.c Don't redefine errno(3) 2022-12-22 11:43:29 +01:00
find_new_sub_uids.c Don't redefine errno(3) 2022-12-22 11:43:29 +01:00
find_new_uid.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
getdate.h Update licensing info 2021-12-23 19:36:50 -06:00
getdate.y Use isdigit(3) instead of a reimplementation of it 2021-12-29 02:41:09 +01:00
getgr_nam_gid.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
getrange.c Declare read-only parameters const 2022-08-06 11:27:56 -05:00
gettime.c Use strict prototype in definition 2023-03-20 08:47:52 +01:00
hushed.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
idmapping.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
idmapping.h Add include for uid_t 2022-08-06 11:27:56 -05:00
isexpired.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
limits.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
list.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
log.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
loginprompt.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
mail.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
Makefile.am libmisc: Move xmalloc.c to alloc.c 2023-02-23 20:28:43 -06:00
mempcpy.c Add mempcpy(3) 2023-02-16 11:29:33 +01:00
motd.c libmisc: Move xmalloc.c to alloc.c 2023-02-23 20:28:43 -06:00
myname.c Update licensing info 2021-12-23 19:36:50 -06:00
obscure.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
pam_pass_non_interactive.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
pam_pass.c Don't redefine errno(3) 2022-12-22 11:43:29 +01:00
prefix_flag.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
pwd2spwd.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
pwd_init.c Assume SIGTTOU is defined 2022-12-15 16:22:05 -06:00
pwdcheck.c Call NULL by its name 2023-02-02 13:08:30 -06:00
remove_tree.c Avoid races in remove_tree() 2022-08-17 12:34:01 -05:00
rlogin.c Assume B[0-9]* macros are defined 2022-12-15 16:22:05 -06:00
root_flag.c libmisc/root_flag: add tips for --root flag only support abspath 2022-08-06 15:04:06 -05:00
salt.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
setugid.c Update licensing info 2021-12-23 19:36:50 -06:00
setupenv.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
shell.c Call NULL by its name 2023-02-02 13:08:30 -06:00
stpecpy.c Add stpecpy() 2023-02-16 11:29:33 +01:00
stpeprintf.c Add stpeprintf() 2023-02-16 11:29:33 +01:00
strtoday.c strtoday.c: remove unused defines.h inclusion 2022-12-22 10:39:45 -06:00
sub.c Update licensing info 2021-12-23 19:36:50 -06:00
sulog.c Call NULL by its name 2023-02-02 13:08:30 -06:00
ttytype.c ttytype(): Fix race 2023-02-09 10:03:03 -06:00
tz.c Remove superfluous casts 2023-02-09 10:03:03 -06:00
ulimit.c Remove comments that survived the Helicoprion 2022-12-15 16:22:05 -06:00
user_busy.c Fix typo 2023-02-16 13:23:08 -06:00
utmp.c Simplify is_my_tty() 2023-03-28 13:00:38 +02:00
valid.c Update licensing info 2021-12-23 19:36:50 -06:00
xgetgrgid.c Fix comments 2023-02-16 13:23:08 -06:00
xgetgrnam.c Fix comments 2023-02-16 13:23:08 -06:00
xgetpwnam.c libmisc: fix grammar 2023-01-26 22:44:39 -06:00
xgetpwuid.c Fix comments 2023-02-16 13:23:08 -06:00
xgetspnam.c Fix comments 2023-02-16 13:23:08 -06:00
xgetXXbyYY.c Use safer allocation macros 2023-02-23 20:28:43 -06:00
yesno.c Remove superfluous casts 2023-02-09 10:03:03 -06:00