Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Object identifier database #6

Closed
pjbakker opened this issue Nov 15, 2012 · 1 comment
Closed

Object identifier database #6

pjbakker opened this issue Nov 15, 2012 · 1 comment

Comments

@pjbakker
Copy link
Contributor

X509 certificates use object IDs for many different purposes (including in their DN and issuer strings). Such Object IDs have a short form string (e.g. "SN"), and sometimes a longer descriptive string.

Currently the string representation of such object IDs are generated using a switch-case construct within the x509 code. As more and more certificate extensions and OID types are added, this becomes less and less maintainable. A separate module containing an object "database" would allow more flexibility, and cleaner code.

@pjbakker
Copy link
Contributor Author

Integrated in the 1.3 branch

NirEkhauz pushed a commit to NirEkhauz/mbedtls that referenced this issue Dec 14, 2017
Also add get timer in [uS] to timing library
NirEkhauz pushed a commit to NirEkhauz/mbedtls that referenced this issue Dec 28, 2017
Also add get timer in [uS] to timing library
Patater added a commit to Patater/mbedtls that referenced this issue Jan 15, 2019
Add initializers for crypto structs
hanno-becker pushed a commit to hanno-becker/mbedtls that referenced this issue Jan 25, 2019
hanno-becker pushed a commit to hanno-becker/mbedtls that referenced this issue Mar 23, 2020
gilles-peskine-arm added a commit to gilles-peskine-arm/mbedtls that referenced this issue Apr 16, 2021
Use bitwise or on the absolute values, rather than addition, to
combine a high-level error code with a low-level error code (or an
error code of either kind with 0). This gives the same result when
combining error codes of different levels, since those use disjoint
bit positions.

An advantage of using bitwise or is that it is more robust to
mistakes. For example, combining an error code with itself is now a
no-op. Combining two error codes from the same module is more likely
to result in an error code from that module. We detect such errors
dynamically in tests when MBEDTLS_TEST_HOOKS is enabled, but that
doesn't help for rare cases which are not covered by our tests.

Another advantage is that it guarantees that the result cannot be 0 if
either input is nonzero. This sometimes helps optimizers and static
analyzers.

A downside is that the generated code tends to be slightly larger. When
combining a high-level constant with a low-level value, which is a
common idiom, the typical cost with Arm Thumb seems to be 1 extra
instruction, e.g. dhm_read_bignum before:
    30:   4b04            ldr     r3, [pc, Mbed-TLS#16]   ; (44 <dhm_read_bignum+0x44>)
    32:   18c0            adds    r0, r0, r3
    44:   ffffcf00        .word   0xffffcf00
After:
    30:   23c4            movs    r3, Mbed-TLS#196        ; 0xc4
    32:   4240            negs    r0, r0
    34:   019b            lsls    r3, r3, Mbed-TLS#6
    36:   4318            orrs    r0, r3
    38:   4240            negs    r0, r0

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
minosgalanakis added a commit to minosgalanakis/mbedtls that referenced this issue Dec 10, 2021
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
mprse added a commit to mprse/mbedtls that referenced this issue Jun 15, 2022
…e causing issues

This commit needs to be dropped when real reason is found for:

Sign alg from PK: RSA_PSS(SHA256), not supported .................. ==587199==WARNING: MemorySanitizer: use-of-uninitialized-value
    #0 0x4cd774 in mbedtls_debug_print_msg (/home/przemek/mbedtls/tests/test_suite_ssl+0x4cd774)
    Mbed-TLS#1 0x536e76 in mbedtls_ssl_tls13_get_sig_alg_from_pk (/home/przemek/mbedtls/tests/test_suite_ssl+0x536e76)
    Mbed-TLS#2 0x4beeb7 in test_get_sig_alg_from_pk (/home/przemek/mbedtls/tests/test_suite_ssl+0x4beeb7)
    Mbed-TLS#3 0x4bf2dc in test_get_sig_alg_from_pk_wrapper (/home/przemek/mbedtls/tests/test_suite_ssl+0x4bf2dc)
    Mbed-TLS#4 0x4c199f in execute_tests (/home/przemek/mbedtls/tests/test_suite_ssl+0x4c199f)
    Mbed-TLS#5 0x4c2e86 in main (/home/przemek/mbedtls/tests/test_suite_ssl+0x4c2e86)
    Mbed-TLS#6 0x7f4a5c8c60b2 in __libc_start_main /build/glibc-sMfBJT/glibc-2.31/csu/../csu/libc-start.c:308:16
    Mbed-TLS#7 0x41c37d in _start (/home/przemek/mbedtls/tests/test_suite_ssl+0x41c37d)

Signed-off-by: Przemek Stekiel <przemyslaw.stekiel@mobica.com>
mprse added a commit to mprse/mbedtls that referenced this issue Jun 20, 2022
…e causing issues

This commit needs to be dropped when real reason is found for:

Sign alg from PK: RSA_PSS(SHA256), not supported .................. ==587199==WARNING: MemorySanitizer: use-of-uninitialized-value
    #0 0x4cd774 in mbedtls_debug_print_msg (/home/przemek/mbedtls/tests/test_suite_ssl+0x4cd774)
    Mbed-TLS#1 0x536e76 in mbedtls_ssl_tls13_get_sig_alg_from_pk (/home/przemek/mbedtls/tests/test_suite_ssl+0x536e76)
    Mbed-TLS#2 0x4beeb7 in test_get_sig_alg_from_pk (/home/przemek/mbedtls/tests/test_suite_ssl+0x4beeb7)
    Mbed-TLS#3 0x4bf2dc in test_get_sig_alg_from_pk_wrapper (/home/przemek/mbedtls/tests/test_suite_ssl+0x4bf2dc)
    Mbed-TLS#4 0x4c199f in execute_tests (/home/przemek/mbedtls/tests/test_suite_ssl+0x4c199f)
    Mbed-TLS#5 0x4c2e86 in main (/home/przemek/mbedtls/tests/test_suite_ssl+0x4c2e86)
    Mbed-TLS#6 0x7f4a5c8c60b2 in __libc_start_main /build/glibc-sMfBJT/glibc-2.31/csu/../csu/libc-start.c:308:16
    Mbed-TLS#7 0x41c37d in _start (/home/przemek/mbedtls/tests/test_suite_ssl+0x41c37d)

Signed-off-by: Przemek Stekiel <przemyslaw.stekiel@mobica.com>
McuxCIBot pushed a commit to nxp-mcuxpresso/mbedtls that referenced this issue Nov 29, 2024
…vPortCalloc() definition

Merge in MCUCORE/mcu-sdk-mbedtls from MCUX-55442-duplicate-definition-of-pvportcalloc-when-is-used-freertos-heap4 to master

* commit '5735ac97a0e3cc92b2c65f8e2377f772243b711f':
  [MCUX-55442] Fix incorrect version checking
  [MCUX-55442] Check FreeRTOS version before pvPortCalloc() definition
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant