]> Kevux Git Server - fll/commit
Update: Avoid the generic 'char' and switch to the explicit 'unsigned char'.
authorKevin Day <thekevinday@gmail.com>
Tue, 8 Mar 2022 03:12:18 +0000 (21:12 -0600)
committerKevin Day <thekevinday@gmail.com>
Tue, 8 Mar 2022 03:12:18 +0000 (21:12 -0600)
commit443a8fe5510515e7d53a025841582faf4b8b1304
tree482ad704a4b6a8081bcc7d0cdcc3afc1a8b9528e
parent538cf0c9d82fafd7be4e803ca6dded9bc5589cdf
Update: Avoid the generic 'char' and switch to the explicit 'unsigned char'.

Operations against unsigned are generally safer than the signed equivalents.
Using the generic 'char' may be different between compilers and expecations cannot be guaranteed.
This could result in obscure security issues.

Changing this to 'unsigned char' guarantees consistent behavior.

There are problems with some standard libc functions that expect char.
Explicitly cast to 'char' in these cases.
73 files changed:
level_0/f_account/c/account.c
level_0/f_capability/c/capability.c
level_0/f_color/c/color.c
level_0/f_color/c/color/common.h
level_0/f_console/c/console/common.h
level_0/f_conversion/c/conversion.c
level_0/f_conversion/c/conversion.h
level_0/f_conversion/c/private-conversion.c
level_0/f_conversion/c/private-conversion.h
level_0/f_directory/c/directory.c
level_0/f_file/c/file.c
level_0/f_file/c/private-file.c
level_0/f_file/c/private-file.h
level_0/f_iki/c/private-iki.c
level_0/f_iki/c/private-iki.h
level_0/f_path/c/path.c
level_0/f_print/c/print.c
level_0/f_print/c/print.h
level_0/f_print/c/print/private-to.c
level_0/f_print/c/print/private-to.h
level_0/f_print/c/print/to.c
level_0/f_print/c/print/to.h
level_0/f_print/c/private-print.c
level_0/f_print/c/private-print.h
level_0/f_string/c/private-string.c
level_0/f_string/c/string/common.h
level_0/f_string/c/string/dynamic.c
level_0/f_string/c/string/dynamic.h
level_0/f_type/c/type.h
level_0/f_utf/c/utf/dynamic.c
level_0/f_utf/c/utf/dynamic.h
level_1/fl_control_group/c/control_group.c
level_1/fl_directory/c/directory.c
level_1/fl_directory/c/private-directory.c
level_1/fl_environment/c/environment.c
level_1/fl_fss/c/private-fss.c
level_1/fl_print/c/private-print.c
level_1/fl_string/c/string.c
level_1/fl_utf/c/utf.c
level_1/fl_utf/c/utf.h
level_1/fl_utf_file/c/private-utf_file.c
level_1/fl_utf_file/c/private-utf_file.h
level_1/fl_utf_file/c/utf_file.c
level_2/fll_control_group/c/control_group.c
level_2/fll_execute/c/execute.c
level_2/fll_execute/c/private-execute.c
level_2/fll_file/c/private-file.c
level_2/fll_iki/c/private-iki.c
level_2/fll_iki/c/private-iki.h
level_2/fll_print/c/print.c
level_2/fll_print/c/print.h
level_3/byte_dump/c/private-byte_dump.c
level_3/byte_dump/c/private-byte_dump.h
level_3/controller/c/common/private-control.h
level_3/controller/c/control/private-control.c
level_3/controller/c/control/private-control.h
level_3/controller/c/controller/private-controller.c
level_3/controller/c/entry/private-entry.c
level_3/controller/c/rule/private-rule.c
level_3/controller/c/thread/private-thread_control.c
level_3/controller/documents/packet.txt
level_3/controller/specifications/packet.txt
level_3/fake/c/private-build-library.c
level_3/fake/c/private-build-object.c
level_3/fake/c/private-build-program.c
level_3/fake/c/private-build-skeleton.c
level_3/fake/c/private-build.c
level_3/fake/c/private-make-operate_process_type.c
level_3/fake/c/private-make-operate_validate.c
level_3/fake/c/private-skeleton.c
level_3/firewall/c/firewall.c
level_3/utf8/c/private-utf8_binary.c
level_3/utf8/c/private-utf8_codepoint.c