Task #131153 - fixed.err
back to task #131153download
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/i386/include/bits/byteswap.h:49: error[uninitvar]: Uninitialized variable: out_high
# 47| : "0" ( in_high ), "1" ( in_low ) );
# 48|
# 49|-> return ( ( ( ( uint64_t ) out_high ) << 32 ) |
# 50| ( ( uint64_t ) out_low ) );
# 51| }
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/i386/include/bits/byteswap.h:50: error[uninitvar]: Uninitialized variable: out_low
# 48|
# 49| return ( ( ( ( uint64_t ) out_high ) << 32 ) |
# 50|-> ( ( uint64_t ) out_low ) );
# 51| }
# 52|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/i386/include/bits/hyperv.h:46: error[uninitvar]: Uninitialized variable: result
# 44| "D" ( 0 ), "S" ( out_phys ),
# 45| "m" ( hypercall ) );
# 46|-> return result;
# 47| }
# 48|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/i386/include/bits/profile.h:25: error[uninitvar]: Uninitialized variable: tsc
# 23| /* Read timestamp counter */
# 24| __asm__ __volatile__ ( "rdtsc" : "=A" ( tsc ) );
# 25|-> return tsc;
# 26| }
# 27|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/i386/include/bits/strings.h:25: error[uninitvar]: Uninitialized variable: lsb_minus_one
# 23| : "=r" ( lsb_minus_one )
# 24| : "rm" ( value ) );
# 25|-> return ( lsb_minus_one + 1 );
# 26| } else {
# 27| return 0;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/i386/include/bits/strings.h:69: error[uninitvar]: Uninitialized variable: msb_minus_one
# 67| : "=r" ( msb_minus_one )
# 68| : "rm" ( value ) );
# 69|-> return ( msb_minus_one + 1 );
# 70| } else {
# 71| return 0;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/i386/include/ipxe/msr.h:23: error[uninitvar]: Uninitialized variable: value
# 21|
# 22| __asm__ __volatile__ ( "rdmsr" : "=A" ( value ) : "c" ( msr ) );
# 23|-> return value;
# 24| }
# 25|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/core/dumpregs.c:4:36: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 2| #include <realmode.h>
# 3|
# 4|-> void __asmcall _dump_regs ( struct i386_all_regs *ix86 ) {
# 5|
# 6| __asm__ __volatile__ (
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/core/dumpregs.c:4:36: warning[-Wattributes]: ‘regparm’ attribute ignored
# 4 | void __asmcall _dump_regs ( struct i386_all_regs *ix86 ) {
# | ^~~~~~~~~~~~~
# 2| #include <realmode.h>
# 3|
# 4|-> void __asmcall _dump_regs ( struct i386_all_regs *ix86 ) {
# 5|
# 6| __asm__ __volatile__ (
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/core/gdbmach.c:202:1: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 200| * @v regs Register dump
# 201| */
# 202|-> __asmcall void gdbmach_handler ( int signo, gdbreg_t *regs ) {
# 203| unsigned long dr7_disabled = DR7_GE;
# 204| unsigned long dr6_clear = 0;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/core/gdbmach.c:202:1: warning[-Wattributes]: ‘regparm’ attribute ignored
# 202 | __asmcall void gdbmach_handler ( int signo, gdbreg_t *regs ) {
# | ^~~~~~~~~
# 200| * @v regs Register dump
# 201| */
# 202|-> __asmcall void gdbmach_handler ( int signo, gdbreg_t *regs ) {
# 203| unsigned long dr7_disabled = DR7_GE;
# 204| unsigned long dr6_clear = 0;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/core/relocate.c:43:34: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 41| * to the prefix in %edi.
# 42| */
# 43|-> __asmcall void relocate ( struct i386_all_regs *ix86 ) {
# 44| struct memory_map memmap;
# 45| uint32_t start, end, size, padded_size, max;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/core/relocate.c:43:34: warning[-Wattributes]: ‘regparm’ attribute ignored
# 43 | __asmcall void relocate ( struct i386_all_regs *ix86 ) {
# | ^~~~~~~~~~~~~
# 41| * to the prefix in %edi.
# 42| */
# 43|-> __asmcall void relocate ( struct i386_all_regs *ix86 ) {
# 44| struct memory_map memmap;
# 45| uint32_t start, end, size, padded_size, max;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/core/x86_io.c:53: error[uninitvar]: Uninitialized variable: data
# 51| "emms\n\t"
# 52| : "=A" ( data ) : "r" ( io_addr ) );
# 53|-> return data;
# 54| }
# 55|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/drivers/net/undiload.c:125: error[legacyUninitvar]: Uninitialized variable: exit
# 123| : "a" ( __from_data16 ( &undi_loader ) )
# 124| : "ebx", "ecx", "edx", "esi", "edi" );
# 125|-> if ( exit != PXENV_EXIT_SUCCESS ) {
# 126| rc = -EUNDILOAD ( undi_loader.Status );
# 127| DBGC ( undi, "UNDI %p loader failed: %s\n",
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/image/pxe_image.c:93: error[legacyUninitvar]: Uninitialized variable: _io_addr
# 91| /* Disable IRQ, if applicable */
# 92| if ( netdev_irq_supported ( netdev ) && netdev->dev->desc.irq )
# 93|-> disable_irq ( netdev->dev->desc.irq );
# 94|
# 95| /* Start PXE NBP */
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U1780> *)&invertend’
ipxe-20240119-gitde8a0821/src/tests/x25519_test.c:218:9: call_function: inlined call to ‘bigint_init_raw’ from ‘x25519_invert_okx’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U1780> *)&multiplicand’
ipxe-20240119-gitde8a0821/src/tests/x25519_test.c:174:9: call_function: inlined call to ‘bigint_init_raw’ from ‘x25519_multiply_okx’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U1b40> *)&point’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:785:6: enter_function: entry to ‘x25519_key’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:793:9: call_function: calling ‘x25519_reverse’ from ‘x25519_key’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:793:9: return_function: returning to ‘x25519_key’ from ‘x25519_reverse’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:795:9: call_function: inlined call to ‘bigint_init_raw’ from ‘x25519_key’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U1b40> *)((char *)&step + offsetof(struct x25519_step, x_n.X))’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:742:9: call_function: inlined call to ‘bigint_init_raw’ from ‘x25519_ladder’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U3780> *)(&value_temp[0])’
ipxe-20240119-gitde8a0821/src/tests/bigint_test.c:624:9: call_function: inlined call to ‘bigint_init_raw’ from ‘bigint_test_exec’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U56e0> *)&ctx_39->modulus.element’
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:82:12: branch_false: following ‘false’ branch (when ‘len >= generator_len’)...
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:87:12: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:87:12: branch_false: following ‘false’ branch (when ‘len >= partner_len’)...
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:93:12: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:93:12: branch_false: following ‘false’ branch (when ‘private_len <= len’)...
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:100:15: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:101:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:107:9: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:107:9: call_function: inlined call to ‘bigint_init_raw’ from ‘dhe_key’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U75a0> *)&point’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:785:6: enter_function: entry to ‘x25519_key’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:793:9: call_function: calling ‘x25519_reverse’ from ‘x25519_key’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:793:9: return_function: returning to ‘x25519_key’ from ‘x25519_reverse’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:795:9: call_function: inlined call to ‘bigint_init_raw’ from ‘x25519_key’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U75a0> *)((char *)&step + offsetof(struct x25519_step, x_n.X))’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:742:9: call_function: inlined call to ‘bigint_init_raw’ from ‘x25519_ladder’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U9500> *)&MEM[(struct <anon> *)_18].element’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:239:12: enter_function: entry to ‘rsa_init’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:254:21: call_function: calling ‘rsa_parse_mod_exp’ from ‘rsa_init’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:254:21: return_function: returning to ‘rsa_init’ from ‘rsa_parse_mod_exp’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:254:12: branch_false: following ‘false’ branch (when ‘rc == 0’)...
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:21: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:21: call_function: calling ‘rsa_alloc’ from ‘rsa_init’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:21: return_function: returning to ‘rsa_init’ from ‘rsa_alloc’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:12: branch_false: following ‘false’ branch (when ‘rc == 0’)...
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:270:9: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:270:9: call_function: inlined call to ‘bigint_init_raw’ from ‘rsa_init’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<Ud280> *)&ctx_37->modulus.element’
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:82:12: branch_false: following ‘false’ branch (when ‘len >= generator_len’)...
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:87:12: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:87:12: branch_false: following ‘false’ branch (when ‘len >= partner_len’)...
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:93:12: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:93:12: branch_false: following ‘false’ branch (when ‘private_len <= len’)...
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:100:15: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:101:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:107:9: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/dhe.c:107:9: call_function: inlined call to ‘bigint_init_raw’ from ‘dhe_key’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<Ud960> *)&MEM[(struct <anon> *)_19].element’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:239:12: enter_function: entry to ‘rsa_init’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:254:21: call_function: calling ‘rsa_parse_mod_exp’ from ‘rsa_init’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:254:21: return_function: returning to ‘rsa_init’ from ‘rsa_parse_mod_exp’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:254:12: branch_false: following ‘false’ branch (when ‘rc == 0’)...
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:21: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:21: call_function: calling ‘rsa_alloc’ from ‘rsa_init’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:21: return_function: returning to ‘rsa_init’ from ‘rsa_alloc’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:12: branch_false: following ‘false’ branch (when ‘rc == 0’)...
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:270:9: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:270:9: call_function: inlined call to ‘bigint_init_raw’ from ‘rsa_init’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<Ue1e0> *)&invertend’
ipxe-20240119-gitde8a0821/src/tests/x25519_test.c:218:9: call_function: inlined call to ‘bigint_init_raw’ from ‘x25519_invert_okx’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<Ue1e0> *)&multiplicand’
ipxe-20240119-gitde8a0821/src/tests/x25519_test.c:174:9: call_function: inlined call to ‘bigint_init_raw’ from ‘x25519_multiply_okx’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<Ue1e0> *)(&value_temp[0])’
ipxe-20240119-gitde8a0821/src/tests/bigint_test.c:624:9: call_function: inlined call to ‘bigint_init_raw’ from ‘bigint_test_exec’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:35:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<Ue960> *)&MEM[(struct <anon> *)_19].element’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:239:12: enter_function: entry to ‘rsa_init’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:254:21: call_function: calling ‘rsa_parse_mod_exp’ from ‘rsa_init’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:254:21: return_function: returning to ‘rsa_init’ from ‘rsa_parse_mod_exp’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:254:12: branch_false: following ‘false’ branch (when ‘rc == 0’)...
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:21: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:21: call_function: calling ‘rsa_alloc’ from ‘rsa_init’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:21: return_function: returning to ‘rsa_init’ from ‘rsa_alloc’
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:266:12: branch_false: following ‘false’ branch (when ‘rc == 0’)...
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:270:9: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/crypto/rsa.c:270:9: call_function: inlined call to ‘bigint_init_raw’ from ‘rsa_init’
# 33|
# 34| /* Copy raw data in reverse order, padding with zeros */
# 35|-> __asm__ __volatile__ ( "\n1:\n\t"
# 36| "movb -1(%3,%1), %%al\n\t"
# 37| "stosb\n\t"
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:168: error[uninitvar]: Uninitialized variable: result
# 166| "=&c" ( discard_c )
# 167| : "1" ( value0 ), "2" ( size ) );
# 168|-> return result;
# 169| }
# 170|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:195: error[uninitvar]: Uninitialized variable: result
# 193| : "r" ( value0 ), "r" ( reference0 ),
# 194| "0" ( 0 ), "1" ( size ) );
# 195|-> return result;
# 196| }
# 197|
Error: CPPCHECK_WARNING (CWE-758):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:214: error[shiftTooManyBitsSigned]: Shifting signed 32-bit value by 31 bits is undefined behaviour
# 212| unsigned int subindex = ( bit % ( 8 * sizeof ( value->element[0] ) ) );
# 213|
# 214|-> return ( value->element[index] & ( 1 << subindex ) );
# 215| }
# 216|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:240: error[uninitvar]: Uninitialized variable: result
# 238| : "=&r" ( result ), "=&c" ( discard_c )
# 239| : "r" ( value0 ), "1" ( size ) );
# 240|-> return result;
# 241| }
# 242|
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:289:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U2d20> *)&e’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:666:9: call_function: inlined call to ‘x25519_add’ from ‘x25519_step’
# 287| long discard_c;
# 288|
# 289|-> __asm__ __volatile__ ( "rep movsl\n\t"
# 290| : "=&D" ( discard_D ), "=&S" ( discard_S ),
# 291| "=&c" ( discard_c ), "+m" ( *dest )
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:289:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<U2d20> *)((char *)&tmp + offsetof(x25519_t, element[0]))’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:567:9: call_function: inlined call to ‘bigint_shrink_raw’ from ‘x25519_reduce_by’
# 287| long discard_c;
# 288|
# 289|-> __asm__ __volatile__ ( "rep movsl\n\t"
# 290| : "=&D" ( discard_D ), "=&S" ( discard_S ),
# 291| "=&c" ( discard_c ), "+m" ( *dest )
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:289:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<Ud780> *)&e’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:666:9: call_function: inlined call to ‘x25519_add’ from ‘x25519_step’
# 287| long discard_c;
# 288|
# 289|-> __asm__ __volatile__ ( "rep movsl\n\t"
# 290| : "=&D" ( discard_D ), "=&S" ( discard_S ),
# 291| "=&c" ( discard_c ), "+m" ( *dest )
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bigint.h:289:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(<Ud780> *)((char *)&tmp + offsetof(x25519_t, element[0]))’
ipxe-20240119-gitde8a0821/src/crypto/x25519.c:567:9: call_function: inlined call to ‘bigint_shrink_raw’ from ‘x25519_reduce_by’
# 287| long discard_c;
# 288|
# 289|-> __asm__ __volatile__ ( "rep movsl\n\t"
# 290| : "=&D" ( discard_D ), "=&S" ( discard_S ),
# 291| "=&c" ( discard_c ), "+m" ( *dest )
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bitops.h:70: error[uninitvar]: Uninitialized variable: old
# 68| : "+m" ( *bytes ), "=r" ( old )
# 69| : "Ir" ( bit ) );
# 70|-> return old;
# 71| }
# 72|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/bits/bitops.h:91: error[uninitvar]: Uninitialized variable: old
# 89| : "+m" ( *bytes ), "=r" ( old )
# 90| : "Ir" ( bit ) );
# 91|-> return old;
# 92| }
# 93|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/ipxe/x86_io.h:99: error[uninitvar]: Uninitialized variable: data
# 97| "0" ( data ) ); \
# 98| }
# 99|-> X86_INX ( b, uint8_t, "b" );
# 100| X86_INX ( w, uint16_t, "w" );
# 101| X86_INX ( l, uint32_t, "k" );
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/ipxe/x86_io.h:100: error[uninitvar]: Uninitialized variable: data
# 98| }
# 99| X86_INX ( b, uint8_t, "b" );
# 100|-> X86_INX ( w, uint16_t, "w" );
# 101| X86_INX ( l, uint32_t, "k" );
# 102|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/ipxe/x86_io.h:101: error[uninitvar]: Uninitialized variable: data
# 99| X86_INX ( b, uint8_t, "b" );
# 100| X86_INX ( w, uint16_t, "w" );
# 101|-> X86_INX ( l, uint32_t, "k" );
# 102|
# 103| #define X86_OUTX( _insn_suffix, _type, _reg_prefix ) \
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/include/librm.h:132: warning[uninitvar]: Uninitialized variable: addr
# 130| static inline __always_inline userptr_t
# 131| UACCESS_INLINE ( librm, virt_to_user ) ( volatile const void *addr ) {
# 132|-> return trivial_virt_to_user ( addr );
# 133| }
# 134|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/include/pxe_call.h:40:45: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 38| extern int pxe_deactivate ( void );
# 39| extern int pxe_start_nbp ( void );
# 40|-> extern __asmcall void pxe_api_call ( struct i386_all_regs *ix86 );
# 41| extern int pxe_api_call_weak ( struct i386_all_regs *ix86 );
# 42|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/include/pxe_call.h:40:45: warning[-Wattributes]: ‘regparm’ attribute ignored
# 40 | extern __asmcall void pxe_api_call ( struct i386_all_regs *ix86 );
# | ^~~~~~~~~~~~~
# 38| extern int pxe_deactivate ( void );
# 39| extern int pxe_start_nbp ( void );
# 40|-> extern __asmcall void pxe_api_call ( struct i386_all_regs *ix86 );
# 41| extern int pxe_api_call_weak ( struct i386_all_regs *ix86 );
# 42|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/apm.c:55: error[uninitvar]: Uninitialized variable: carry
# 53| : "a" ( 0x5300 ), "b" ( 0x0000 ),
# 54| "d" ( 0x0000 ) );
# 55|-> if ( carry ) {
# 56| DBG ( "APM not present\n" );
# 57| return -ENOTSUP;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/apm.c:59: error[uninitvar]: Uninitialized variable: apm_signature
# 57| return -ENOTSUP;
# 58| }
# 59|-> if ( apm_signature != 0x504d ) { /* signature 'PM' */
# 60| DBG ( "APM not present\n" );
# 61| return -ENOTSUP;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/apm.c:63: error[uninitvar]: Uninitialized variable: apm_version
# 61| return -ENOTSUP;
# 62| }
# 63|-> if ( apm_version < 0x0101 ) { /* Need version 1.1+ */
# 64| DBG ( "APM 1.1+ not supported\n" );
# 65| return -ENOTSUP;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/apm.c:67: error[uninitvar]: Uninitialized variable: apm_flags
# 65| return -ENOTSUP;
# 66| }
# 67|-> if ( ( apm_flags & 0x8 ) == 0x8 ) {
# 68| DBG ( "APM power management disabled\n" );
# 69| return -EPERM;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/bios_console.c:397: error[uninitvar]: Uninitialized variable: keypress
# 395| : "a" ( 0x1000 ), "m" ( bios_inject_lock ) );
# 396| bios_inject_lock--;
# 397|-> scancode = ( keypress >> 8 );
# 398| character = ( keypress & 0xff );
# 399| get_real ( kb0, BDA_SEG, BDA_KB0 );
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/bios_console.c:472: error[uninitvar]: Uninitialized variable: flags
# 470| : "a" ( 0x1100 ), "m" ( bios_inject_lock ) );
# 471| bios_inject_lock--;
# 472|-> return ( ! ( flags & ZF ) );
# 473| }
# 474|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/bios_console.c:488:51: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 486| * @v ix86 Registers as passed to INT 16
# 487| */
# 488|-> static __asmcall __used void bios_inject ( struct i386_all_regs *ix86 ) {
# 489| unsigned int discard_a;
# 490| unsigned int scancode;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/bios_console.c:488:51: warning[-Wattributes]: ‘regparm’ attribute ignored
# 488 | static __asmcall __used void bios_inject ( struct i386_all_regs *ix86 ) {
# | ^~~~~~~~~~~~~
# 486| * @v ix86 Registers as passed to INT 16
# 487| */
# 488|-> static __asmcall __used void bios_inject ( struct i386_all_regs *ix86 ) {
# 489| unsigned int discard_a;
# 490| unsigned int scancode;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/int13.c:1067:45: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 1065| *
# 1066| */
# 1067|-> static __asmcall __used void int13 ( struct i386_all_regs *ix86 ) {
# 1068| int command = ix86->regs.ah;
# 1069| unsigned int bios_drive = ix86->regs.dl;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/int13.c: scope_hint: At top level
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/int13.c:1067:45: warning[-Wattributes]: ‘regparm’ attribute ignored
# 1067 | static __asmcall __used void int13 ( struct i386_all_regs *ix86 ) {
# | ^~~~~~~~~~~~~
# 1065| *
# 1066| */
# 1067|-> static __asmcall __used void int13 ( struct i386_all_regs *ix86 ) {
# 1068| int command = ix86->regs.ah;
# 1069| unsigned int bios_drive = ix86->regs.dl;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:102: error[uninitvar]: Uninitialized variable: flags
# 100| : "a" ( 0xe801 ) );
# 101|
# 102|-> if ( flags & CF ) {
# 103| DBG ( "INT 15,e801 failed with CF set\n" );
# 104| return 0;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:107: error[uninitvar]: Uninitialized variable: extmem_16m_plus_64k
# 105| }
# 106|
# 107|-> if ( ! ( extmem_1m_to_16m_k | extmem_16m_plus_64k ) ) {
# 108| DBG ( "INT 15,e801 extmem=0, using confmem\n" );
# 109| extmem_1m_to_16m_k = confmem_1m_to_16m_k;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:107: error[uninitvar]: Uninitialized variable: extmem_1m_to_16m_k
# 105| }
# 106|
# 107|-> if ( ! ( extmem_1m_to_16m_k | extmem_16m_plus_64k ) ) {
# 108| DBG ( "INT 15,e801 extmem=0, using confmem\n" );
# 109| extmem_1m_to_16m_k = confmem_1m_to_16m_k;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:109: error[uninitvar]: Uninitialized variable: confmem_1m_to_16m_k
# 107| if ( ! ( extmem_1m_to_16m_k | extmem_16m_plus_64k ) ) {
# 108| DBG ( "INT 15,e801 extmem=0, using confmem\n" );
# 109|-> extmem_1m_to_16m_k = confmem_1m_to_16m_k;
# 110| extmem_16m_plus_64k = confmem_16m_plus_64k;
# 111| }
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:110: error[uninitvar]: Uninitialized variable: confmem_16m_plus_64k
# 108| DBG ( "INT 15,e801 extmem=0, using confmem\n" );
# 109| extmem_1m_to_16m_k = confmem_1m_to_16m_k;
# 110|-> extmem_16m_plus_64k = confmem_16m_plus_64k;
# 111| }
# 112|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:145: error[uninitvar]: Uninitialized variable: extmem
# 143| DBG ( "INT 15,88 extended memory size %d kB [100000, %x)\n",
# 144| extmem, ( 0x100000 + ( extmem * 1024 ) ) );
# 145|-> return extmem;
# 146| }
# 147|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:213: error[uninitvar]: Uninitialized variable: smap
# 211| : "esi", "memory" );
# 212|
# 213|-> if ( smap != SMAP ) {
# 214| DBG ( "INT 15,e820 failed SMAP signature check\n" );
# 215| return -ENOTSUP;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:218: error[uninitvar]: Uninitialized variable: size
# 216| }
# 217|
# 218|-> if ( size < E820_MIN_SIZE ) {
# 219| DBG ( "INT 15,e820 returned only %d bytes\n", size );
# 220| return -EINVAL;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:223: error[uninitvar]: Uninitialized variable: flags
# 221| }
# 222|
# 223|-> if ( flags & CF ) {
# 224| DBG ( "INT 15,e820 terminated on CF set\n" );
# 225| break;
Error: GCC_ANALYZER_WARNING (CWE-465):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:265:20: warning[-Wanalyzer-deref-before-check]: check of ‘prev_region’ for NULL after already dereferencing it
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:314:6: enter_function: entry to ‘x86_get_memmap’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:327:18: call_function: calling ‘extmemsize’ from ‘x86_get_memmap’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:327:18: return_function: returning to ‘x86_get_memmap’ from ‘extmemsize’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/memmap.c:330:21: call_function: calling ‘meme820’ from ‘x86_get_memmap’
# 263|
# 264| /* Check for adjacent regions and merge them */
# 265|-> if ( prev_region && ( region->start == prev_region->end ) ) {
# 266| prev_region->end = region->end;
# 267| } else {
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/pcibios.c:66: error[uninitvar]: Uninitialized variable: num_bus
# 64| /* Populate range */
# 65| range->start = PCI_BUSDEVFN ( 0, 0, 0, 0 );
# 66|-> range->count = PCI_BUSDEVFN ( 0, num_bus, 0, 0 );
# 67| }
# 68|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/pcibios.c:94: error[uninitvar]: Uninitialized variable: status
# 92| : "edx" );
# 93|
# 94|-> return ( status >> 8 );
# 95| }
# 96|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/pcibios.c:120: error[uninitvar]: Uninitialized variable: status
# 118| : "edx" );
# 119|
# 120|-> return ( status >> 8 );
# 121| }
# 122|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/rtc_entropy.c:201: error[legacyUninitvar]: Uninitialized variable: _io_addr
# 199| /* Hook ISR and enable RTC interrupts */
# 200| rtc_hook_isr();
# 201|-> enable_irq ( RTC_IRQ );
# 202| rtc_enable_int();
# 203|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/rtc_entropy.c:227: error[legacyUninitvar]: Uninitialized variable: _io_addr
# 225| err_check:
# 226| rtc_disable_int();
# 227|-> disable_irq ( RTC_IRQ );
# 228| rtc_unhook_isr();
# 229| err_no_tsc:
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/rtc_entropy.c:241: error[legacyUninitvar]: Uninitialized variable: _io_addr
# 239| /* Disable RTC interrupts and unhook ISR */
# 240| rtc_disable_int();
# 241|-> disable_irq ( RTC_IRQ );
# 242| rtc_unhook_isr();
# 243| }
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/rtc_entropy.c:286: error[uninitvar]: Uninitialized variable: after
# 284| : "2" ( 0 ) );
# 285|
# 286|-> *noise = ( after - before );
# 287| return 0;
# 288| }
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/rtc_entropy.c:286: error[uninitvar]: Uninitialized variable: before
# 284| : "2" ( 0 ) );
# 285|
# 286|-> *noise = ( after - before );
# 287| return 0;
# 288| }
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/vesafb.c:225: error[uninitvar]: Uninitialized variable: status
# 223| "D" ( __from_data16 ( controller ) )
# 224| : "memory", "ebx", "edx" );
# 225|-> if ( ( rc = vesafb_rc ( status ) ) != 0 ) {
# 226| DBGC ( &vbe_buf, "VESAFB could not get controller information: "
# 227| "[%04x] %s\n", status, strerror ( rc ) );
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/vesafb.c:282: error[uninitvar]: Uninitialized variable: status
# 280| "D" ( __from_data16 ( mode ) )
# 281| : "memory" );
# 282|-> if ( ( rc = vesafb_rc ( status ) ) != 0 ) {
# 283| DBGC ( &vbe_buf, "VESAFB could not get mode %04x information: "
# 284| "[%04x] %s\n", mode_number, status, strerror ( rc ) );
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pcbios/vesafb.c:343: error[uninitvar]: Uninitialized variable: status
# 341| : "a" ( VBE_SET_MODE ),
# 342| "b" ( mode_number ) );
# 343|-> if ( ( rc = vesafb_rc ( status ) ) != 0 ) {
# 344| DBGC ( &vbe_buf, "VESAFB could not set mode %04x: [%04x] %s\n",
# 345| mode_number, status, strerror ( rc ) );
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pxe/pxe_call.c:145:38: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 143| * @ret ax PXE exit code
# 144| */
# 145|-> __asmcall void pxe_api_call ( struct i386_all_regs *ix86 ) {
# 146| uint16_t opcode = ix86->regs.bx;
# 147| userptr_t uparams = real_to_user ( ix86->segs.es, ix86->regs.di );
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pxe/pxe_call.c:145:38: warning[-Wattributes]: ‘regparm’ attribute ignored
# 145 | __asmcall void pxe_api_call ( struct i386_all_regs *ix86 ) {
# | ^~~~~~~~~~~~~
# 143| * @ret ax PXE exit code
# 144| */
# 145|-> __asmcall void pxe_api_call ( struct i386_all_regs *ix86 ) {
# 146| uint16_t opcode = ix86->regs.bx;
# 147| userptr_t uparams = real_to_user ( ix86->segs.es, ix86->regs.di );
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pxe/pxe_call.c:197:41: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 195| * @ret ax PXE exit code
# 196| */
# 197|-> __asmcall void pxe_loader_call ( struct i386_all_regs *ix86 ) {
# 198| userptr_t uparams = real_to_user ( ix86->segs.es, ix86->regs.di );
# 199| struct s_UNDI_LOADER params;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/pxe/pxe_call.c:197:41: warning[-Wattributes]: ‘regparm’ attribute ignored
# 197 | __asmcall void pxe_loader_call ( struct i386_all_regs *ix86 ) {
# | ^~~~~~~~~~~~~
# 195| * @ret ax PXE exit code
# 196| */
# 197|-> __asmcall void pxe_loader_call ( struct i386_all_regs *ix86 ) {
# 198| userptr_t uparams = real_to_user ( ix86->segs.es, ix86->regs.di );
# 199| struct s_UNDI_LOADER params;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/com32_call.c:47:1: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 45| * Interrupt call helper
# 46| */
# 47|-> void __asmcall com32_intcall ( uint8_t interrupt, physaddr_t inregs_phys, physaddr_t outregs_phys ) {
# 48|
# 49| DBGC ( &com32_regs, "COM32 INT%x in %#08lx out %#08lx\n",
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/com32_call.c:47:1: warning[-Wattributes]: ‘regparm’ attribute ignored
# 47 | void __asmcall com32_intcall ( uint8_t interrupt, physaddr_t inregs_phys, physaddr_t outregs_phys ) {
# | ^~~~
# 45| * Interrupt call helper
# 46| */
# 47|-> void __asmcall com32_intcall ( uint8_t interrupt, physaddr_t inregs_phys, physaddr_t outregs_phys ) {
# 48|
# 49| DBGC ( &com32_regs, "COM32 INT%x in %#08lx out %#08lx\n",
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/com32_call.c:120:1: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 118| * Farcall helper
# 119| */
# 120|-> void __asmcall com32_farcall ( uint32_t proc, physaddr_t inregs_phys, physaddr_t outregs_phys ) {
# 121|
# 122| DBGC ( &com32_regs, "COM32 farcall %04x:%04x in %#08lx out %#08lx\n",
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/com32_call.c:120:1: warning[-Wattributes]: ‘regparm’ attribute ignored
# 120 | void __asmcall com32_farcall ( uint32_t proc, physaddr_t inregs_phys, physaddr_t outregs_phys ) {
# | ^~~~
# 118| * Farcall helper
# 119| */
# 120|-> void __asmcall com32_farcall ( uint32_t proc, physaddr_t inregs_phys, physaddr_t outregs_phys ) {
# 121|
# 122| DBGC ( &com32_regs, "COM32 farcall %04x:%04x in %#08lx out %#08lx\n",
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/com32_call.c:182:1: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 180| * CDECL farcall helper
# 181| */
# 182|-> int __asmcall com32_cfarcall ( uint32_t proc, physaddr_t stack, size_t stacksz ) {
# 183| int32_t eax;
# 184|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/com32_call.c:182:1: warning[-Wattributes]: ‘regparm’ attribute ignored
# 182 | int __asmcall com32_cfarcall ( uint32_t proc, physaddr_t stack, size_t stacksz ) {
# | ^~~
# 180| * CDECL farcall helper
# 181| */
# 182|-> int __asmcall com32_cfarcall ( uint32_t proc, physaddr_t stack, size_t stacksz ) {
# 183| int32_t eax;
# 184|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/com32_call.c:199: error[uninitvar]: Uninitialized variable: eax
# 197| remove_user_from_rm_stack ( 0, stacksz );
# 198|
# 199|-> return eax;
# 200| }
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:117:50: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘shuf[i].src’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:106:13: enter_function: entry to ‘shuffle’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:112:9: call_function: inlined call to ‘copy_from_user’ from ‘shuffle’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:116:22: branch_true: following ‘true’ branch (when ‘count > i’)...
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:117:50: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:117:50: danger: use of uninitialized value ‘shuf[i].src’ here
# 115| /* Do the copies */
# 116| for ( i = 0; i < count; i++ ) {
# 117|-> userptr_t src_u = phys_to_user ( shuf[ i ].src );
# 118| userptr_t dest_u = phys_to_user ( shuf[ i ].dest );
# 119|
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:122:53: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘shuf[i].len’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:106:13: enter_function: entry to ‘shuffle’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:112:9: call_function: inlined call to ‘copy_from_user’ from ‘shuffle’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:116:22: branch_true: following ‘true’ branch (when ‘count > i’)...
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:117:50: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:120:20: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:122:53: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:122:53: danger: use of uninitialized value ‘shuf[i].len’ here
# 120| if ( shuf[ i ].src == 0xFFFFFFFF ) {
# 121| /* Fill with 0 instead of copying */
# 122|-> memset_user ( dest_u, 0, 0, shuf[ i ].len );
# 123| } else if ( shuf[ i ].dest == 0xFFFFFFFF ) {
# 124| /* Copy new list of descriptors */
Error: GCC_ANALYZER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:131:61: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘shuf[i].len’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:106:13: enter_function: entry to ‘shuffle’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:112:9: call_function: inlined call to ‘copy_from_user’ from ‘shuffle’
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:116:22: branch_true: following ‘true’ branch (when ‘count > i’)...
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:117:50: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:120:20: branch_false: following ‘false’ branch...
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:123:27: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:123:27: branch_false: following ‘false’ branch...
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:131:61: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:131:61: danger: use of uninitialized value ‘shuf[i].len’ here
# 129| } else {
# 130| /* Regular copy */
# 131|-> memmove_user ( dest_u, 0, src_u, 0, shuf[ i ].len );
# 132| }
# 133| }
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:223:45: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 221| * Terminate program interrupt handler
# 222| */
# 223|-> static __asmcall __used void int20 ( struct i386_all_regs *ix86 __unused ) {
# 224| rmlongjmp ( comboot_return, COMBOOT_EXIT );
# 225| }
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:223:45: warning[-Wattributes]: ‘regparm’ attribute ignored
# 223 | static __asmcall __used void int20 ( struct i386_all_regs *ix86 __unused ) {
# | ^~~~~~~~~~~~~
# 221| * Terminate program interrupt handler
# 222| */
# 223|-> static __asmcall __used void int20 ( struct i386_all_regs *ix86 __unused ) {
# 224| rmlongjmp ( comboot_return, COMBOOT_EXIT );
# 225| }
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:231:45: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 229| * DOS-compatible API
# 230| */
# 231|-> static __asmcall __used void int21 ( struct i386_all_regs *ix86 ) {
# 232| ix86->flags |= CF;
# 233|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:231:45: warning[-Wattributes]: ‘regparm’ attribute ignored
# 231 | static __asmcall __used void int21 ( struct i386_all_regs *ix86 ) {
# | ^~~~~~~~~~~~~
# 229| * DOS-compatible API
# 230| */
# 231|-> static __asmcall __used void int21 ( struct i386_all_regs *ix86 ) {
# 232| ix86->flags |= CF;
# 233|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:314:45: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 312| * SYSLINUX API
# 313| */
# 314|-> static __asmcall __used void int22 ( struct i386_all_regs *ix86 ) {
# 315| ix86->flags |= CF;
# 316|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/interface/syslinux/comboot_call.c:314:45: warning[-Wattributes]: ‘regparm’ attribute ignored
# 314 | static __asmcall __used void int22 ( struct i386_all_regs *ix86 ) {
# | ^~~~~~~~~~~~~
# 312| * SYSLINUX API
# 313| */
# 314|-> static __asmcall __used void int22 ( struct i386_all_regs *ix86 ) {
# 315| ix86->flags |= CF;
# 316|
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/arch/x86/interface/vmware/vmconsole.c:56:19: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (5 chars into 4 available)
# 56 | .prefix = "log ",
# | ^~~~~~
# 54| char message[VMCONSOLE_BUFSIZE];
# 55| } vmconsole_buffer = {
# 56|-> .prefix = "log ",
# 57| };
# 58|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_mgmt.c:122:1: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 120| *
# 121| */
# 122|-> __asmcall void init_idt ( void ) {
# 123| struct interrupt_vector *vec;
# 124| unsigned int intr;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_mgmt.c:122:1: warning[-Wattributes]: ‘regparm’ attribute ignored
# 122 | __asmcall void init_idt ( void ) {
# | ^~~~~~~~~
# 120| *
# 121| */
# 122|-> __asmcall void init_idt ( void ) {
# 123| struct interrupt_vector *vec;
# 124| unsigned int intr;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_mgmt.c:248:20: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 246| void __attribute__ (( regparm ( 3 ) ))
# 247| interrupt ( int intr, struct interrupt_frame32 *frame32,
# 248|-> struct interrupt_frame64 *frame64 ) {
# 249| struct profiler *profiler = interrupt_profiler ( intr );
# 250| uint32_t discard_eax;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_mgmt.c:248:20: warning[-Wattributes]: ‘regparm’ attribute ignored
# 248 | struct interrupt_frame64 *frame64 ) {
# | ^~~~~~~~~~~~~~~~~
# 246| void __attribute__ (( regparm ( 3 ) ))
# 247| interrupt ( int intr, struct interrupt_frame32 *frame32,
# 248|-> struct interrupt_frame64 *frame64 ) {
# 249| struct profiler *profiler = interrupt_profiler ( intr );
# 250| uint32_t discard_eax;
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_mgmt.c:394:36: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 392| *
# 393| */
# 394|-> __asmcall void check_fxsr ( struct i386_all_regs *regs ) {
# 395| struct x86_features features;
# 396|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_mgmt.c:394:36: warning[-Wattributes]: ‘regparm’ attribute ignored
# 394 | __asmcall void check_fxsr ( struct i386_all_regs *regs ) {
# | ^~~~~~~~~~~~~
# 392| *
# 393| */
# 394|-> __asmcall void check_fxsr ( struct i386_all_regs *regs ) {
# 395| struct x86_features features;
# 396|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_test.c:62:26: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 60| */
# 61| static __asmcall __used void
# 62|-> librm_test_call ( struct i386_all_regs *ix86 __unused ) {
# 63| /* Do nothing */
# 64| }
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_test.c:62:26: warning[-Wattributes]: ‘regparm’ attribute ignored
# 62 | librm_test_call ( struct i386_all_regs *ix86 __unused ) {
# | ^~~~~~~~~~~~~
# 60| */
# 61| static __asmcall __used void
# 62|-> librm_test_call ( struct i386_all_regs *ix86 __unused ) {
# 63| /* Do nothing */
# 64| }
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_test.c:90: error[uninitvar]: Uninitialized variable: timestamp_lo
# 88| "=d" ( timestamp_hi )
# 89| : );
# 90|-> timestamp = timestamp_lo;
# 91| if ( sizeof ( timestamp ) > sizeof ( timestamp_lo ) )
# 92| timestamp |= ( ( ( uint64_t ) timestamp_hi ) << 32 );
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_test.c:92: error[uninitvar]: Uninitialized variable: timestamp_hi
# 90| timestamp = timestamp_lo;
# 91| if ( sizeof ( timestamp ) > sizeof ( timestamp_lo ) )
# 92|-> timestamp |= ( ( ( uint64_t ) timestamp_hi ) << 32 );
# 93| profile_start_at ( &r2p_profiler, timestamp );
# 94| profile_stop ( &r2p_profiler );
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_test.c:113: error[uninitvar]: Uninitialized variable: started
# 111| : "=a" ( stopped ), "=d" ( discard_d ),
# 112| "=R" ( started ) : );
# 113|-> profile_start_at ( &virt_call_profiler, started );
# 114| profile_stop_at ( &virt_call_profiler, stopped );
# 115| }
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86/transitions/librm_test.c:114: error[uninitvar]: Uninitialized variable: stopped
# 112| "=R" ( started ) : );
# 113| profile_start_at ( &virt_call_profiler, started );
# 114|-> profile_stop_at ( &virt_call_profiler, stopped );
# 115| }
# 116| }
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/bits/hyperv.h:48: error[uninitvar]: Uninitialized variable: result
# 46| : "m" ( hypercall )
# 47| : "r9", "r10", "r11" );
# 48|-> return result;
# 49| }
# 50|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/bits/profile.h:26: error[uninitvar]: Uninitialized variable: eax
# 24| /* Read timestamp counter */
# 25| __asm__ __volatile__ ( "rdtsc" : "=a" ( eax ), "=d" ( edx ) );
# 26|-> return ( ( ( ( uint64_t ) edx ) << 32 ) | eax );
# 27| }
# 28|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/bits/profile.h:26: error[uninitvar]: Uninitialized variable: edx
# 24| /* Read timestamp counter */
# 25| __asm__ __volatile__ ( "rdtsc" : "=a" ( eax ), "=d" ( edx ) );
# 26|-> return ( ( ( ( uint64_t ) edx ) << 32 ) | eax );
# 27| }
# 28|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/bits/strings.h:25: error[uninitvar]: Uninitialized variable: lsb_minus_one
# 23| : "=r" ( lsb_minus_one )
# 24| : "rm" ( value ) );
# 25|-> return ( lsb_minus_one + 1 );
# 26| } else {
# 27| return 0;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/bits/strings.h:61: error[uninitvar]: Uninitialized variable: msb_minus_one
# 59| : "=r" ( msb_minus_one )
# 60| : "rm" ( value ) );
# 61|-> return ( msb_minus_one + 1 );
# 62| } else {
# 63| return 0;
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/ipxe/msr.h:25: error[uninitvar]: Uninitialized variable: high
# 23| __asm__ __volatile__ ( "rdmsr" :
# 24| "=d" ( high ), "=a" ( low ) : "c" ( msr ) );
# 25|-> return ( ( ( ( uint64_t ) high ) << 32 ) | low );
# 26| }
# 27|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/ipxe/msr.h:25: error[uninitvar]: Uninitialized variable: low
# 23| __asm__ __volatile__ ( "rdmsr" :
# 24| "=d" ( high ), "=a" ( low ) : "c" ( msr ) );
# 25|-> return ( ( ( ( uint64_t ) high ) << 32 ) | low );
# 26| }
# 27|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/setjmp.h:29:1: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 27|
# 28| extern int __asmcall __attribute__ (( returns_twice ))
# 29|-> setjmp ( jmp_buf env );
# 30|
# 31| extern void __asmcall __attribute__ (( noreturn ))
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/tests/setjmp_test.c:37: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/setjmp.h:29:1: warning[-Wattributes]: ‘regparm’ attribute ignored
# 29 | setjmp ( jmp_buf env );
# | ^~~~~~
# 27|
# 28| extern int __asmcall __attribute__ (( returns_twice ))
# 29|-> setjmp ( jmp_buf env );
# 30|
# 31| extern void __asmcall __attribute__ (( noreturn ))
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/setjmp.h:32:1: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 30|
# 31| extern void __asmcall __attribute__ (( noreturn ))
# 32|-> longjmp ( jmp_buf env, int val );
# 33|
# 34| #endif /* _SETJMP_H */
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/arch/x86_64/include/setjmp.h:32:1: warning[-Wattributes]: ‘regparm’ attribute ignored
# 32 | longjmp ( jmp_buf env, int val );
# | ^~~~~~~
# 30|
# 31| extern void __asmcall __attribute__ (( noreturn ))
# 32|-> longjmp ( jmp_buf env, int val );
# 33|
# 34| #endif /* _SETJMP_H */
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/core/main.c:28:1: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 26| * @ret rc Return status code
# 27| */
# 28|-> __asmcall int main ( void ) {
# 29| int rc;
# 30|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/core/main.c:28:1: warning[-Wattributes]: ‘regparm’ attribute ignored
# 28 | __asmcall int main ( void ) {
# | ^~~~~~~~~
# 26| * @ret rc Return status code
# 27| */
# 28|-> __asmcall int main ( void ) {
# 29| int rc;
# 30|
Error: GCC_ANALYZER_WARNING (CWE-126):
ipxe-20240119-gitde8a0821/src/drivers/bus/isa.c:103:32: warning[-Wanalyzer-out-of-bounds]: buffer over-read
ipxe-20240119-gitde8a0821/src/drivers/bus/isa.c:101:9: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/drivers/bus/isa.c:101:9: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/drivers/bus/isa.c:103:32: danger: out-of-bounds read from byte 8 till byte 11 but ‘__table_entries’ ends at byte 0
# 101| for_each_table_entry ( driver, ISA_DRIVERS ) {
# 102| for ( ioidx = ISA_IOIDX_MIN ( driver ) ;
# 103|-> ioidx <= ISA_IOIDX_MAX ( driver ) ; ioidx++ ) {
# 104| /* Allocate struct isa_device */
# 105| if ( ! isa )
Error: COMPILER_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/drivers/net/etherfabric.h:524:28: warning[-Wmaybe-uninitialized]: ‘reg.u32[0]’ may be used uninitialized
# 522 | (dword).u32[0] = ( ( (dword).u32[0] \
# | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 523 | & ~EFAB_INPLACE_MASK32 ( 0, 31, field ) ) \
# | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 524 | | EFAB_INSERT_FIELD32 ( 0, 31, field, value ) ); \
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/drivers/net/etherfabric.c:2233:9: note: in expansion of macro ‘EFAB_SET_DWORD_FIELD’
# 2233 | EFAB_SET_DWORD_FIELD ( reg, FCN_XX_DISPERR, FCN_XX_DISPERR_RESET);
# | ^~~~~~~~~~~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/drivers/net/etherfabric.c: scope_hint: In function ‘falcon_init_xmac’
ipxe-20240119-gitde8a0821/src/drivers/net/etherfabric.c:2213:22: note: ‘reg.u32[0]’ was declared here
# 2213 | efab_dword_t reg;
# | ^~~
# 522| (dword).u32[0] = ( ( (dword).u32[0] \
# 523| & ~EFAB_INPLACE_MASK32 ( 0, 31, field ) ) \
# 524|-> | EFAB_INSERT_FIELD32 ( 0, 31, field, value ) ); \
# 525| } while ( 0 )
# 526|
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/drivers/net/thunderx.c:92: error[legacyUninitvar]: Uninitialized variable: _io_addr
# 90| readq ( vnic->regs + TXNIC_QS_RBDR_HEAD(0) ),
# 91| readq ( vnic->regs + TXNIC_QS_RBDR_STATUS0(0) ) );
# 92|-> DBGC ( vnic, "TXNIC %s CQ xxxxx(%05llx)/%05x(%05llx) %08llx:%08llx\n",
# 93| vnic->name, readq ( vnic->regs + TXNIC_QS_CQ_TAIL(0) ),
# 94| ( ( vnic->cq.cons % TXNIC_CQES ) * TXNIC_CQ_STRIDE ),
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/drivers/net/w89c840.c: scope_hint: In function ‘w89c840_probe’
ipxe-20240119-gitde8a0821/src/drivers/net/w89c840.c:628:9: warning[-Wunused-but-set-variable=]: variable ‘sum’ set but not used
# 628 | u16 sum = 0;
# | ^~~
# 626|
# 627|
# 628|-> u16 sum = 0;
# 629| int i;
# 630| unsigned short value;
Error: CPPCHECK_WARNING (CWE-476):
ipxe-20240119-gitde8a0821/src/hci/editstring.c:83: warning[nullPointer]: Possible null pointer dereference: insert_text
# 81|
# 82| /* Copy inserted text to cursor position */
# 83|-> memcpy ( ( string->buf + string->cursor ), insert_text, insert_len );
# 84| string->cursor += insert_len;
# 85| }
Error: GCC_ANALYZER_WARNING (CWE-835):
ipxe-20240119-gitde8a0821/src/image/pnm.c:200:26: warning[-Wanalyzer-infinite-loop]: infinite loop
# 198|
# 199| /* Fill pixel buffer */
# 200|-> while ( offset < pixbuf->len ) {
# 201|
# 202| /* Extract a scaled composite scalar value from the file */
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/include/ipxe/efi/Base.h:839:1: error[error]: static assertion failed: "Alignment of INT64 does not meet UEFI Specification Data Type requirements"
# 837| STATIC_ASSERT (ALIGNOF (INT32) == sizeof (INT32), "Alignment of INT32 does not meet UEFI Specification Data Type requirements");
# 838| STATIC_ASSERT (ALIGNOF (UINT32) == sizeof (UINT32), "Alignment of UINT32 does not meet UEFI Specification Data Type requirements");
# 839|-> STATIC_ASSERT (ALIGNOF (INT64) == sizeof (INT64), "Alignment of INT64 does not meet UEFI Specification Data Type requirements");
# 840| STATIC_ASSERT (ALIGNOF (UINT64) == sizeof (UINT64), "Alignment of UINT64 does not meet UEFI Specification Data Type requirements");
# 841| STATIC_ASSERT (ALIGNOF (CHAR8) == sizeof (CHAR8), "Alignment of CHAR8 does not meet UEFI Specification Data Type requirements");
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/include/ipxe/efi/Base.h:840:1: error[error]: static assertion failed: "Alignment of UINT64 does not meet UEFI Specification Data Type requirements"
# 838| STATIC_ASSERT (ALIGNOF (UINT32) == sizeof (UINT32), "Alignment of UINT32 does not meet UEFI Specification Data Type requirements");
# 839| STATIC_ASSERT (ALIGNOF (INT64) == sizeof (INT64), "Alignment of INT64 does not meet UEFI Specification Data Type requirements");
# 840|-> STATIC_ASSERT (ALIGNOF (UINT64) == sizeof (UINT64), "Alignment of UINT64 does not meet UEFI Specification Data Type requirements");
# 841| STATIC_ASSERT (ALIGNOF (CHAR8) == sizeof (CHAR8), "Alignment of CHAR8 does not meet UEFI Specification Data Type requirements");
# 842| STATIC_ASSERT (ALIGNOF (CHAR16) == sizeof (CHAR16), "Alignment of CHAR16 does not meet UEFI Specification Data Type requirements");
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/include/ipxe/efi/Protocol/ShimLock.h:23:3: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 21| IN VOID *buffer,
# 22| IN UINT32 size
# 23|-> );
# 24|
# 25| typedef struct _EFI_SHIM_LOCK_PROTOCOL {
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/interface/efi/efi_guid.c:65: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/efi/Protocol/ShimLock.h:23:3: warning[-Wattributes]: ‘regparm’ attribute ignored
# 23 | );
# | ^
# 21| IN VOID *buffer,
# 22| IN UINT32 size
# 23|-> );
# 24|
# 25| typedef struct _EFI_SHIM_LOCK_PROTOCOL {
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/include/ipxe/efi/efi_uaccess.h:46: warning[uninitvar]: Uninitialized variable: addr
# 44| static inline __always_inline userptr_t
# 45| UACCESS_INLINE ( efi, virt_to_user ) ( volatile const void *addr ) {
# 46|-> return trivial_virt_to_user ( addr );
# 47| }
# 48|
Error: GCC_ANALYZER_WARNING (CWE-476):
ipxe-20240119-gitde8a0821/src/include/ipxe/iobuf.h:156:18: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘first’
ipxe-20240119-gitde8a0821/src/net/tls.c:3244:12: enter_function: entry to ‘tls_cipherstream_deliver’
ipxe-20240119-gitde8a0821/src/net/tls.c:3252:17: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3255:26: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3261:32: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3261:32: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3276:17: call_function: inlined call to ‘memcpy’ from ‘tls_cipherstream_deliver’
ipxe-20240119-gitde8a0821/src/net/tls.c:3280:20: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3281:37: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3281:37: call_function: calling ‘tls_newdata_process_data’ from ‘tls_cipherstream_deliver’
# 154| */
# 155| static inline size_t iob_len ( struct io_buffer *iobuf ) {
# 156|-> return ( iobuf->tail - iobuf->data );
# 157| }
# 158|
Error: GCC_ANALYZER_WARNING (CWE-476):
ipxe-20240119-gitde8a0821/src/include/ipxe/iobuf.h:176:18: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘dest’
ipxe-20240119-gitde8a0821/src/net/tls.c:3244:12: enter_function: entry to ‘tls_cipherstream_deliver’
ipxe-20240119-gitde8a0821/src/net/tls.c:3252:17: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3255:26: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3261:32: branch_false: following ‘false’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3273:28: call_function: inlined call to ‘iob_len’ from ‘tls_cipherstream_deliver’
ipxe-20240119-gitde8a0821/src/net/tls.c:3274:33: call_function: inlined call to ‘iob_tailroom’ from ‘tls_cipherstream_deliver’
# 174| */
# 175| static inline size_t iob_tailroom ( struct io_buffer *iobuf ) {
# 176|-> return ( iobuf->end - iobuf->tail );
# 177| }
# 178|
Error: GCC_ANALYZER_WARNING (CWE-476):
ipxe-20240119-gitde8a0821/src/include/ipxe/iobuf.h:176:18: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘iobuf’
ipxe-20240119-gitde8a0821/src/net/tls.c:3244:12: enter_function: entry to ‘tls_cipherstream_deliver’
ipxe-20240119-gitde8a0821/src/net/tls.c:3252:17: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3255:26: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3261:32: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3261:32: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3276:17: call_function: inlined call to ‘memcpy’ from ‘tls_cipherstream_deliver’
ipxe-20240119-gitde8a0821/src/net/tls.c:3280:20: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3281:37: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3281:37: call_function: calling ‘tls_newdata_process_data’ from ‘tls_cipherstream_deliver’
# 174| */
# 175| static inline size_t iob_tailroom ( struct io_buffer *iobuf ) {
# 176|-> return ( iobuf->end - iobuf->tail );
# 177| }
# 178|
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/sanboot.c:41: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/core/sanboot.c: scope_hint: In function ‘sandev_parse_iso9660’
ipxe-20240119-gitde8a0821/src/include/ipxe/iso9660.h:42:20: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘unsigned char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (6 chars into 5 available)
# 42 | #define ISO9660_ID "CD001"
# | ^~~~~~~
ipxe-20240119-gitde8a0821/src/core/sanboot.c:758:23: note: in expansion of macro ‘ISO9660_ID’
# 758 | .id = ISO9660_ID,
# | ^~~~~~~~~~
# 40|
# 41| /** ISO9660 identifier */
# 42|-> #define ISO9660_ID "CD001"
# 43|
# 44| #endif /* _IPXE_ISO9660_H */
Error: GCC_ANALYZER_WARNING (CWE-401):
ipxe-20240119-gitde8a0821/src/include/ipxe/malloc.h:63:16: warning[-Wanalyzer-malloc-leak]: leak of ‘bufinf’
ipxe-20240119-gitde8a0821/src/drivers/net/jme.c:702:1: enter_function: entry to ‘jme_open’
ipxe-20240119-gitde8a0821/src/drivers/net/jme.c:710:14: call_function: calling ‘jme_alloc_rx_resources’ from ‘jme_open’
# 61| */
# 62| static inline void * __malloc malloc_phys ( size_t size, size_t phys_align ) {
# 63|-> return malloc_phys_offset ( size, phys_align, 0 );
# 64| }
# 65|
Error: GCC_ANALYZER_WARNING (CWE-401):
ipxe-20240119-gitde8a0821/src/include/ipxe/malloc.h:63:16: warning[-Wanalyzer-malloc-leak]: leak of ‘edi’
ipxe-20240119-gitde8a0821/src/drivers/net/jme.c:702:1: enter_function: entry to ‘jme_open’
ipxe-20240119-gitde8a0821/src/drivers/net/jme.c:710:14: call_function: calling ‘jme_alloc_rx_resources’ from ‘jme_open’
# 61| */
# 62| static inline void * __malloc malloc_phys ( size_t size, size_t phys_align ) {
# 63|-> return malloc_phys_offset ( size, phys_align, 0 );
# 64| }
# 65|
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/version.c:35: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:59:21: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (131 chars into 130 available)
# 59 | SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:35:9: note: in definition of macro ‘SBAT_LINE’
# 35 | name "," _S2 ( generation ) "," vendor "," package "," \
# | ^~~~
ipxe-20240119-gitde8a0821/src/core/version.c:121:19: note: in expansion of macro ‘SBAT_HEADER’
# 121 | #define SBAT_DATA SBAT_HEADER "" SBAT_IPXE "" SBAT_PRODUCT
# | ^~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/core/version.c:124:54: note: in expansion of macro ‘SBAT_DATA’
# 124 | const char sbat[ sizeof ( SBAT_DATA ) - 1 ] __sbat = SBAT_DATA;
# | ^~~~~~~~~
# 57| /** SBAT header line */
# 58| #define SBAT_HEADER \
# 59|-> SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# 60| _S2 ( SBAT_GENERATION ), \
# 61| "https://github.com/rhboot/shim/blob/main/SBAT.md" )
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/version.c:35: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:59:21: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (132 chars into 131 available)
# 59 | SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:35:9: note: in definition of macro ‘SBAT_LINE’
# 35 | name "," _S2 ( generation ) "," vendor "," package "," \
# | ^~~~
ipxe-20240119-gitde8a0821/src/core/version.c:121:19: note: in expansion of macro ‘SBAT_HEADER’
# 121 | #define SBAT_DATA SBAT_HEADER "" SBAT_IPXE "" SBAT_PRODUCT
# | ^~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/core/version.c:124:54: note: in expansion of macro ‘SBAT_DATA’
# 124 | const char sbat[ sizeof ( SBAT_DATA ) - 1 ] __sbat = SBAT_DATA;
# | ^~~~~~~~~
# 57| /** SBAT header line */
# 58| #define SBAT_HEADER \
# 59|-> SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# 60| _S2 ( SBAT_GENERATION ), \
# 61| "https://github.com/rhboot/shim/blob/main/SBAT.md" )
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/version.c:35: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:59:21: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (133 chars into 132 available)
# 59 | SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:35:9: note: in definition of macro ‘SBAT_LINE’
# 35 | name "," _S2 ( generation ) "," vendor "," package "," \
# | ^~~~
ipxe-20240119-gitde8a0821/src/core/version.c:121:19: note: in expansion of macro ‘SBAT_HEADER’
# 121 | #define SBAT_DATA SBAT_HEADER "" SBAT_IPXE "" SBAT_PRODUCT
# | ^~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/core/version.c:124:54: note: in expansion of macro ‘SBAT_DATA’
# 124 | const char sbat[ sizeof ( SBAT_DATA ) - 1 ] __sbat = SBAT_DATA;
# | ^~~~~~~~~
# 57| /** SBAT header line */
# 58| #define SBAT_HEADER \
# 59|-> SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# 60| _S2 ( SBAT_GENERATION ), \
# 61| "https://github.com/rhboot/shim/blob/main/SBAT.md" )
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/version.c:35: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:59:21: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (134 chars into 133 available)
# 59 | SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:35:9: note: in definition of macro ‘SBAT_LINE’
# 35 | name "," _S2 ( generation ) "," vendor "," package "," \
# | ^~~~
ipxe-20240119-gitde8a0821/src/core/version.c:121:19: note: in expansion of macro ‘SBAT_HEADER’
# 121 | #define SBAT_DATA SBAT_HEADER "" SBAT_IPXE "" SBAT_PRODUCT
# | ^~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/core/version.c:124:54: note: in expansion of macro ‘SBAT_DATA’
# 124 | const char sbat[ sizeof ( SBAT_DATA ) - 1 ] __sbat = SBAT_DATA;
# | ^~~~~~~~~
# 57| /** SBAT header line */
# 58| #define SBAT_HEADER \
# 59|-> SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# 60| _S2 ( SBAT_GENERATION ), \
# 61| "https://github.com/rhboot/shim/blob/main/SBAT.md" )
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/version.c:35: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:59:21: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (135 chars into 134 available)
# 59 | SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:35:9: note: in definition of macro ‘SBAT_LINE’
# 35 | name "," _S2 ( generation ) "," vendor "," package "," \
# | ^~~~
ipxe-20240119-gitde8a0821/src/core/version.c:121:19: note: in expansion of macro ‘SBAT_HEADER’
# 121 | #define SBAT_DATA SBAT_HEADER "" SBAT_IPXE "" SBAT_PRODUCT
# | ^~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/core/version.c:124:54: note: in expansion of macro ‘SBAT_DATA’
# 124 | const char sbat[ sizeof ( SBAT_DATA ) - 1 ] __sbat = SBAT_DATA;
# | ^~~~~~~~~
# 57| /** SBAT header line */
# 58| #define SBAT_HEADER \
# 59|-> SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# 60| _S2 ( SBAT_GENERATION ), \
# 61| "https://github.com/rhboot/shim/blob/main/SBAT.md" )
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/version.c:35: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:59:21: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (136 chars into 135 available)
# 59 | SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:35:9: note: in definition of macro ‘SBAT_LINE’
# 35 | name "," _S2 ( generation ) "," vendor "," package "," \
# | ^~~~
ipxe-20240119-gitde8a0821/src/core/version.c:121:19: note: in expansion of macro ‘SBAT_HEADER’
# 121 | #define SBAT_DATA SBAT_HEADER "" SBAT_IPXE "" SBAT_PRODUCT
# | ^~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/core/version.c:124:54: note: in expansion of macro ‘SBAT_DATA’
# 124 | const char sbat[ sizeof ( SBAT_DATA ) - 1 ] __sbat = SBAT_DATA;
# | ^~~~~~~~~
# 57| /** SBAT header line */
# 58| #define SBAT_HEADER \
# 59|-> SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# 60| _S2 ( SBAT_GENERATION ), \
# 61| "https://github.com/rhboot/shim/blob/main/SBAT.md" )
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/version.c:35: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:59:21: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (137 chars into 136 available)
# 59 | SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:35:9: note: in definition of macro ‘SBAT_LINE’
# 35 | name "," _S2 ( generation ) "," vendor "," package "," \
# | ^~~~
ipxe-20240119-gitde8a0821/src/core/version.c:121:19: note: in expansion of macro ‘SBAT_HEADER’
# 121 | #define SBAT_DATA SBAT_HEADER "" SBAT_IPXE "" SBAT_PRODUCT
# | ^~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/core/version.c:124:54: note: in expansion of macro ‘SBAT_DATA’
# 124 | const char sbat[ sizeof ( SBAT_DATA ) - 1 ] __sbat = SBAT_DATA;
# | ^~~~~~~~~
# 57| /** SBAT header line */
# 58| #define SBAT_HEADER \
# 59|-> SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# 60| _S2 ( SBAT_GENERATION ), \
# 61| "https://github.com/rhboot/shim/blob/main/SBAT.md" )
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/version.c:35: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:59:21: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (138 chars into 137 available)
# 59 | SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:35:9: note: in definition of macro ‘SBAT_LINE’
# 35 | name "," _S2 ( generation ) "," vendor "," package "," \
# | ^~~~
ipxe-20240119-gitde8a0821/src/core/version.c:121:19: note: in expansion of macro ‘SBAT_HEADER’
# 121 | #define SBAT_DATA SBAT_HEADER "" SBAT_IPXE "" SBAT_PRODUCT
# | ^~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/core/version.c:124:54: note: in expansion of macro ‘SBAT_DATA’
# 124 | const char sbat[ sizeof ( SBAT_DATA ) - 1 ] __sbat = SBAT_DATA;
# | ^~~~~~~~~
# 57| /** SBAT header line */
# 58| #define SBAT_HEADER \
# 59|-> SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# 60| _S2 ( SBAT_GENERATION ), \
# 61| "https://github.com/rhboot/shim/blob/main/SBAT.md" )
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/version.c:35: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:59:21: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (139 chars into 138 available)
# 59 | SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:35:9: note: in definition of macro ‘SBAT_LINE’
# 35 | name "," _S2 ( generation ) "," vendor "," package "," \
# | ^~~~
ipxe-20240119-gitde8a0821/src/core/version.c:121:19: note: in expansion of macro ‘SBAT_HEADER’
# 121 | #define SBAT_DATA SBAT_HEADER "" SBAT_IPXE "" SBAT_PRODUCT
# | ^~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/core/version.c:124:54: note: in expansion of macro ‘SBAT_DATA’
# 124 | const char sbat[ sizeof ( SBAT_DATA ) - 1 ] __sbat = SBAT_DATA;
# | ^~~~~~~~~
# 57| /** SBAT header line */
# 58| #define SBAT_HEADER \
# 59|-> SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# 60| _S2 ( SBAT_GENERATION ), \
# 61| "https://github.com/rhboot/shim/blob/main/SBAT.md" )
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/core/version.c:35: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:59:21: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (140 chars into 139 available)
# 59 | SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/include/ipxe/sbat.h:35:9: note: in definition of macro ‘SBAT_LINE’
# 35 | name "," _S2 ( generation ) "," vendor "," package "," \
# | ^~~~
ipxe-20240119-gitde8a0821/src/core/version.c:121:19: note: in expansion of macro ‘SBAT_HEADER’
# 121 | #define SBAT_DATA SBAT_HEADER "" SBAT_IPXE "" SBAT_PRODUCT
# | ^~~~~~~~~~~
ipxe-20240119-gitde8a0821/src/core/version.c:124:54: note: in expansion of macro ‘SBAT_DATA’
# 124 | const char sbat[ sizeof ( SBAT_DATA ) - 1 ] __sbat = SBAT_DATA;
# | ^~~~~~~~~
# 57| /** SBAT header line */
# 58| #define SBAT_HEADER \
# 59|-> SBAT_LINE ( "sbat", SBAT_GENERATION, "SBAT Version", "sbat", \
# 60| _S2 ( SBAT_GENERATION ), \
# 61| "https://github.com/rhboot/shim/blob/main/SBAT.md" )
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/include/ipxe/uaccess.h:338: warning[uninitvar]: Uninitialized variable: dest
# 336| static inline __always_inline void
# 337| copy_from_user ( void *dest, userptr_t src, off_t src_off, size_t len ) {
# 338|-> memcpy_user ( virt_to_user ( dest ), 0, src, src_off, len );
# 339| }
# 340|
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/arch/x86/drivers/xen/hvm.c:34: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/xenver.h:1: warning[-Wheader-guard]: header guard ‘_IPXE_XENVER_H’ followed by ‘#define’ of a different macro
# 1 | #ifndef _IPXE_XENVER_H
ipxe-20240119-gitde8a0821/src/include/ipxe/xenver.h:2: note: ‘_IPXE_VENVER_H’ is defined here; did you mean ‘_IPXE_XENVER_H’?
# 2 | #define _IPXE_VENVER_H
# 1|-> #ifndef _IPXE_XENVER_H
# 2| #define _IPXE_VENVER_H
# 3|
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/include/stdlib.h:79:1: warning[-Wattributes]: ‘[regparm](https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/x86-Attributes.html#index-regparm_002c-x86)’ attribute ignored
# 77|
# 78| extern int system ( const char *command );
# 79|-> extern __asmcall int main ( void );
# 80|
# 81| #endif /* STDLIB_H */
Error: COMPILER_WARNING (CWE-9001):
ipxe-20240119-gitde8a0821/src/include/ipxe/malloc.h:20: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/dma.h:15: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/iobuf.h:15: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/ipxe/ethernet.h:14: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/core/acpimac.c:30: included_from: Included from here.
ipxe-20240119-gitde8a0821/src/include/stdlib.h:79:1: warning[-Wattributes]: ‘regparm’ attribute ignored
# 79 | extern __asmcall int main ( void );
# | ^~~~~~
# 77|
# 78| extern int system ( const char *command );
# 79|-> extern __asmcall int main ( void );
# 80|
# 81| #endif /* STDLIB_H */
Error: GCC_ANALYZER_WARNING (CWE-126):
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:237:30: warning[-Wanalyzer-out-of-bounds]: buffer over-read
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:188:12: branch_false: following ‘false’ branch (when ‘systab’ is non-NULL)...
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:192:16: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:192:12: branch_false: following ‘false’ branch...
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:196:16: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:196:12: branch_false: following ‘false’ branch...
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:201:16: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:201:12: branch_false: following ‘false’ branch...
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:211:20: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:230:9: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:231:40: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:231:20: branch_false: following ‘false’ branch...
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:237:30: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/interface/efi/efi_init.c:237:30: danger: out-of-bounds read from byte 24 till byte 27 but ‘__table_entries’ ends at byte 0
# 235| DBGC ( systab, "EFI does not provide configuration "
# 236| "table %s\n", efi_guid_ntoa ( &tab->guid ) );
# 237|-> if ( tab->required ) {
# 238| efirc = EFI_NOT_AVAILABLE_YET;
# 239| goto err_missing_table;
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/interface/efi/efi_snp.c:1484:27: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (5 chars into 4 available)
# 1484 | .StringId = "UNDI",
# | ^~~~~~
# 1482| static EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL efi_snp_device_nii = {
# 1483| .Revision = EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL_REVISION,
# 1484|-> .StringId = "UNDI",
# 1485| .Type = EfiNetworkInterfaceUndi,
# 1486| .MajorVer = 3,
Error: GCC_ANALYZER_WARNING (CWE-126):
ipxe-20240119-gitde8a0821/src/net/eap.c:96:22: warning[-Wanalyzer-out-of-bounds]: buffer over-read
ipxe-20240119-gitde8a0821/src/net/eap.c:95:9: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/eap.c:96:22: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/eap.c:96:22: danger: out-of-bounds read at byte 0 but ‘__table_entries’ ends at byte 0
# 94| /* Populate methods list */
# 95| for_each_table_entry ( method, EAP_METHODS ) {
# 96|-> if ( method->type > EAP_TYPE_NAK )
# 97| methods[count++] = method->type;
# 98| }
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/net/pccrd.c: scope_hint: In function ‘peerdist_discovery_reply’
ipxe-20240119-gitde8a0821/src/net/pccrd.c:219:24: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (9 chars into 8 available)
# 219 | .hex = "00000000",
# | ^~~~~~~~~~
# 217| struct peerdist_discovery_reply *reply ) {
# 218| static const struct peerdist_discovery_block_count zcount = {
# 219|-> .hex = "00000000",
# 220| };
# 221| struct peerdist_discovery_block_count *count;
Error: GCC_ANALYZER_WARNING (CWE-469):
ipxe-20240119-gitde8a0821/src/net/tls.c:1156:46: warning[-Wanalyzer-undefined-behavior-ptrdiff]: undefined behavior when subtracting pointers
ipxe-20240119-gitde8a0821/src/net/tls.c:3401:13: enter_function: entry to ‘tls_tx_step’
ipxe-20240119-gitde8a0821/src/net/tls.c:3407:12: branch_false: following ‘false’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3411:14: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3411:12: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3416:17: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3423:20: branch_false: following ‘false’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3434:51: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3439:29: call_function: calling ‘tls_send_client_hello’ from ‘tls_tx_step’
# 1154| uint16_t len;
# 1155| struct tls_signature_hash_id
# 1156|-> code[TLS_NUM_SIG_HASH_ALGORITHMS];
# 1157| } __attribute__ (( packed )) signature_algorithms;
# 1158| uint16_t renegotiation_info_type;
Error: GCC_ANALYZER_WARNING (CWE-126):
ipxe-20240119-gitde8a0821/src/net/tls.c:1214:17: warning[-Wanalyzer-out-of-bounds]: buffer over-read
ipxe-20240119-gitde8a0821/src/net/tls.c:3401:13: enter_function: entry to ‘tls_tx_step’
ipxe-20240119-gitde8a0821/src/net/tls.c:3407:12: branch_false: following ‘false’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3411:14: branch_false: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3411:12: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3416:17: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3423:20: branch_true: following ‘true’ branch...
ipxe-20240119-gitde8a0821/src/net/tls.c:3425:51: branch_true: ...to here
ipxe-20240119-gitde8a0821/src/net/tls.c:3439:29: call_function: calling ‘tls_send_client_hello’ from ‘tls_tx_step’
# 1212| = htons ( sizeof ( hello.extensions.signature_algorithms.code));
# 1213| i = 0 ; for_each_table_entry ( sighash, TLS_SIG_HASH_ALGORITHMS )
# 1214|-> hello.extensions.signature_algorithms.code[i++] = sighash->code;
# 1215| hello.extensions.renegotiation_info_type
# 1216| = htons ( TLS_RENEGOTIATION_INFO );
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/net/tls.c:2993: warning[uninitvar]: Uninitialized variable: verify_mac
# 2991|
# 2992| /* Verify MAC */
# 2993|-> if ( memcmp ( mac, verify_mac, suite->mac_len ) != 0 ) {
# 2994| DBGC ( tls, "TLS %p failed MAC verification\n", tls );
# 2995| return -EINVAL_MAC;
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/tests/acpi_test.c:112:25: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (5 chars into 4 available)
# 112 | ACPI_TABLE ( amac_ssdt, "SSDT",
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/tests/acpi_test.c:80:32: note: in definition of macro ‘ACPI_TABLE’
# 80 | .str = SIGNATURE, \
# | ^~~~~~~~~
# 110| * }
# 111| */
# 112|-> ACPI_TABLE ( amac_ssdt, "SSDT",
# 113| DATA ( 0x53, 0x53, 0x44, 0x54, 0x5d, 0x00, 0x00, 0x00, 0x02,
# 114| 0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/tests/acpi_test.c:133:26: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (5 chars into 4 available)
# 133 | ACPI_TABLE ( maca_ssdt1, "SSDT",
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/tests/acpi_test.c:80:32: note: in definition of macro ‘ACPI_TABLE’
# 80 | .str = SIGNATURE, \
# | ^~~~~~~~~
# 131|
# 132| /** "MACA" SSDT1 (does not contain AUXMAC) */
# 133|-> ACPI_TABLE ( maca_ssdt1, "SSDT",
# 134| DATA ( 0x53, 0x53, 0x44, 0x54, 0x3e, 0x00, 0x00, 0x00, 0x02,
# 135| 0x5f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/tests/acpi_test.c:143:26: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (5 chars into 4 available)
# 143 | ACPI_TABLE ( maca_ssdt2, "SSDT",
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/tests/acpi_test.c:80:32: note: in definition of macro ‘ACPI_TABLE’
# 80 | .str = SIGNATURE, \
# | ^~~~~~~~~
# 141|
# 142| /** "MACA" SSDT2 (contains AUXMAC) */
# 143|-> ACPI_TABLE ( maca_ssdt2, "SSDT",
# 144| DATA ( 0x53, 0x53, 0x44, 0x54, 0x54, 0x00, 0x00, 0x00, 0x02,
# 145| 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
Error: COMPILER_WARNING:
ipxe-20240119-gitde8a0821/src/tests/acpi_test.c:163:25: warning[-Wunterminated-string-initialization]: initializer-string for array of ‘char’ truncates NUL terminator but destination lacks ‘nonstring’ attribute (5 chars into 4 available)
# 163 | ACPI_TABLE ( rtma_ssdt, "SSDT",
# | ^~~~~~
ipxe-20240119-gitde8a0821/src/tests/acpi_test.c:80:32: note: in definition of macro ‘ACPI_TABLE’
# 80 | .str = SIGNATURE, \
# | ^~~~~~~~~
# 161|
# 162| /** "RTMA" SSDT */
# 163|-> ACPI_TABLE ( rtma_ssdt, "SSDT",
# 164| DATA ( 0x53, 0x53, 0x44, 0x54, 0x44, 0x00, 0x00, 0x00, 0x02,
# 165| 0x6d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
Error: CPPCHECK_WARNING (CWE-457):
ipxe-20240119-gitde8a0821/src/tests/deflate_test.c:171: error[uninitvar]: Uninitialized variable: data
# 169|
# 170| /* Initialise output chunk */
# 171|-> deflate_chunk_init ( &out, virt_to_user ( data ), 0, sizeof ( data ) );
# 172|
# 173| /* Process input (in fragments, if applicable) */