Skip to content

Conversation

@bbockelm
Copy link

This is the collaboration branch for the shared pool for TPC requests work.

dynamic-entropy added a commit that referenced this pull request Jul 1, 2025
- buff is duplicated into XrdOucStream and never freed

130: ==77706==ERROR: LeakSanitizer: detected memory leaks
130:
130: Direct leak of 25 byte(s) in 1 object(s) allocated from:
130:     #0 0xffff866de3e0 in strdup (/lib64/libasan.so.8+0xde3e0) (BuildId: 8a06fba3c3703d6d4fc1517732173e023d50b811)
130:     #1 0x40258c in main /xrootd/src/XrdApps/XrdAppsCconfig.cc:189
130:     #2 0xffff85c560d8 in __libc_start_call_main (/lib64/libc.so.6+0x260d8) (BuildId: 6b190cb37e36bb79643c3b0727477dee387d4cf8)
130:     #3 0xffff85c561b8 in __libc_start_main_alias_1 (/lib64/libc.so.6+0x261b8) (BuildId: 6b190cb37e36bb79643c3b0727477dee387d4cf8)
130:     #4 0x402d6c in _start (/home/xrootd/build/bin/cconfig+0x402d6c) (BuildId: abdf333ad86ac01dbfaab35089b0f2ca46c00ff1)
dynamic-entropy added a commit that referenced this pull request Jul 1, 2025
- buff is duplicated into XrdOucStream and never freed

130: ==77706==ERROR: LeakSanitizer: detected memory leaks
130:
130: Direct leak of 25 byte(s) in 1 object(s) allocated from:
130:     #0 0xffff866de3e0 in strdup (/lib64/libasan.so.8+0xde3e0) (BuildId: 8a06fba3c3703d6d4fc1517732173e023d50b811)
130:     #1 0x40258c in main /xrootd/src/XrdApps/XrdAppsCconfig.cc:189
130:     #2 0xffff85c560d8 in __libc_start_call_main (/lib64/libc.so.6+0x260d8) (BuildId: 6b190cb37e36bb79643c3b0727477dee387d4cf8)
130:     #3 0xffff85c561b8 in __libc_start_main_alias_1 (/lib64/libc.so.6+0x261b8) (BuildId: 6b190cb37e36bb79643c3b0727477dee387d4cf8)
130:     #4 0x402d6c in _start (/home/xrootd/build/bin/cconfig+0x402d6c) (BuildId: abdf333ad86ac01dbfaab35089b0f2ca46c00ff1)
dynamic-entropy added a commit that referenced this pull request Jul 1, 2025
OSSL_PARAM_get_octet_string() retrieves an OCTET string from the parameter pointed to by p. The OCTETs are either stored into *val with a length limit of max_len or, in the case when *val is NULL, memory is allocated and max_len is ignored. *used_len is populated with the number of OCTETs stored. If val is NULL then the OCTETS are not stored, but *used_len is still populated. If memory is allocated by this function, it must be freed by the caller.

```
110: ==71089==ERROR: LeakSanitizer: detected memory leaks
110:
110: Direct leak of 65 byte(s) in 1 object(s) allocated from:
110:     #0 0xffff940e3fa0 in malloc (/lib64/libasan.so.8+0xe3fa0) (BuildId: 8a06fba3c3703d6d4fc1517732173e023d50b811)
110:     #1 0xffff93b70cc8 in CRYPTO_malloc (/lib64/libcrypto.so.3+0x170cc8) (BuildId: 33e0997b4260371d5963783548a106ff6f0d6fc2)
110:     #2 0xffff93b734d0 in get_string_internal (/lib64/libcrypto.so.3+0x1734d0) (BuildId: 33e0997b4260371d5963783548a106ff6f0d6fc2)
110:     #3 0xffff93b73544 in OSSL_PARAM_get_octet_string (/lib64/libcrypto.so.3+0x173544) (BuildId: 33e0997b4260371d5963783548a106ff6f0d6fc2)
110:     #4 0x403268 in readPubkey(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /xrootd/tests/scitokens/XrdScitokensCreateJwks.cc:116
110:     #5 0x401f8c in main /xrootd/tests/scitokens/XrdScitokensCreateJwks.cc:180
110:     #6 0xffff934560d8 in __libc_start_call_main (/lib64/libc.so.6+0x260d8) (BuildId: 6b190cb37e36bb79643c3b0727477dee387d4cf8)
110:     #7 0xffff934561b8 in __libc_start_main_alias_1 (/lib64/libc.so.6+0x261b8) (BuildId: 6b190cb37e36bb79643c3b0727477dee387d4cf8)
110:     xrootd#8 0x4022ec in _start (/home/xrootd/build/bin/xrdscitokens-create-jwks+0x4022ec) (BuildId: 59427405cd76ed61fc5a88686a7466e1ec3ecc68)
110:
```
dynamic-entropy added a commit that referenced this pull request Jul 1, 2025
OSSL_PARAM_get_octet_string() retrieves an OCTET string from the parameter pointed to by p. The OCTETs are either stored into *val with a length limit of max_len or, in the case when *val is NULL, memory is allocated and max_len is ignored. *used_len is populated with the number of OCTETs stored. If val is NULL then the OCTETS are not stored, but *used_len is still populated. If memory is allocated by this function, it must be freed by the caller.

```
110: ==71089==ERROR: LeakSanitizer: detected memory leaks
110:
110: Direct leak of 65 byte(s) in 1 object(s) allocated from:
110:     #0 0xffff940e3fa0 in malloc (/lib64/libasan.so.8+0xe3fa0) (BuildId: 8a06fba3c3703d6d4fc1517732173e023d50b811)
110:     #1 0xffff93b70cc8 in CRYPTO_malloc (/lib64/libcrypto.so.3+0x170cc8) (BuildId: 33e0997b4260371d5963783548a106ff6f0d6fc2)
110:     #2 0xffff93b734d0 in get_string_internal (/lib64/libcrypto.so.3+0x1734d0) (BuildId: 33e0997b4260371d5963783548a106ff6f0d6fc2)
110:     #3 0xffff93b73544 in OSSL_PARAM_get_octet_string (/lib64/libcrypto.so.3+0x173544) (BuildId: 33e0997b4260371d5963783548a106ff6f0d6fc2)
110:     #4 0x403268 in readPubkey(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /xrootd/tests/scitokens/XrdScitokensCreateJwks.cc:116
110:     #5 0x401f8c in main /xrootd/tests/scitokens/XrdScitokensCreateJwks.cc:180
110:     #6 0xffff934560d8 in __libc_start_call_main (/lib64/libc.so.6+0x260d8) (BuildId: 6b190cb37e36bb79643c3b0727477dee387d4cf8)
110:     #7 0xffff934561b8 in __libc_start_main_alias_1 (/lib64/libc.so.6+0x261b8) (BuildId: 6b190cb37e36bb79643c3b0727477dee387d4cf8)
110:     xrootd#8 0x4022ec in _start (/home/xrootd/build/bin/xrdscitokens-create-jwks+0x4022ec) (BuildId: 59427405cd76ed61fc5a88686a7466e1ec3ecc68)
110:
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants