Re: [LFS Trac] #5912: openssl-4.0.0

"LFS Trac" ([email protected] via lfs-book Mailing List) <[email protected]>
Newsgroups gmane.linux.lfs.book
Message-ID <[email protected]>
#5912: openssl-4.0.0
-------------------------+-----------------------
 Reporter:  Bruce Dubbs  |       Owner:  lfs-book
     Type:  enhancement  |      Status:  new
 Priority:  normal       |   Milestone:  13.1
Component:  Book         |     Version:  git
 Severity:  normal       |  Resolution:
 Keywords:               |
-------------------------+-----------------------
Comment (by Douglas R. Reno):

 Serf seems to be broken in a similar way to how wpa_supplicant is. I
 created the following patch:

 {{{
 renodr [ /sources ]$ diff -Naurp serf-1.3.10.orig/buckets/ssl_buckets.c
 serf-1.3.10/serf-1.3.10/buckets/ssl_buckets.c
 --- serf-1.3.10.orig/buckets/ssl_buckets.c      2023-05-18
 04:33:55.000000000 -0500
 +++ serf-1.3.10/serf-1.3.10/buckets/ssl_buckets.c       2026-05-09
 01:10:29.528563263 -0500
 @@ -567,11 +567,11 @@ get_subject_alt_names(apr_array_header_t
              switch (nm->type) {
                  case GEN_DNS:
                      if (copy_action == ErrorOnNul &&
 -                        strlen(nm->d.ia5->data) != nm->d.ia5->length)
 +                        strlen((const char
 *)ASN1_STRING_get0_data(nm->d.ia5)) != ASN1_STRING_length(nm->d.ia5))
                          return SERF_ERROR_SSL_CERT_FAILED;
                      if (san_arr && *san_arr)
 -                        p = pstrdup_escape_nul_bytes((const char
 *)nm->d.ia5->data,
 -                                                     nm->d.ia5->length,
 +                        p = pstrdup_escape_nul_bytes((const char
 *)ASN1_STRING_get0_data(nm->d.ia5),
 +
 ASN1_STRING_length(nm->d.ia5),
                                                       pool);
                      break;
                  default:
 }}}

 to fix:

 {{{
 gcc -o buckets/ssl_buckets.os -c -std=c89 -Wdeclaration-after-statement
 -Wmissing-prototypes -Wall -g -O2 -fPIC -DNDEBUG -DOPENSSL_NO_STDIO
 -DLINUX -D_REENTRANT -D_GNU_SOURCE -I. -I/usr/include/apr-1 -I/usr/include
 -I/usr/include buckets/ssl_buckets.c
 buckets/ssl_buckets.c: In function 'get_subject_alt_names':
 buckets/ssl_buckets.c:570:41: error: invalid use of incomplete typedef
 'ASN1_IA5STRING' {aka 'struct asn1_string_st'}
   570 |                         strlen(nm->d.ia5->data) !=
 nm->d.ia5->length)
       |                                         ^~
 buckets/ssl_buckets.c:570:61: error: invalid use of incomplete typedef
 'ASN1_IA5STRING' {aka 'struct asn1_string_st'}
   570 |                         strlen(nm->d.ia5->data) !=
 nm->d.ia5->length)
       |                                                             ^~
 buckets/ssl_buckets.c:573:77: error: invalid use of incomplete typedef
 'ASN1_IA5STRING' {aka 'struct asn1_string_st'}
   573 |                         p = pstrdup_escape_nul_bytes((const char
 *)nm->d.ia5->data,
       |
 ^~
 buckets/ssl_buckets.c:574:63: error: invalid use of incomplete typedef
 'ASN1_IA5STRING' {aka 'struct asn1_string_st'}
   574 |
 nm->d.ia5->length,
       |
 }}}

 I will submit this upstream once I've tested subversion with it, but it at
 least allows it to build.
-- 
Ticket URL: <https://wiki.linuxfromscratch.org/lfs/ticket/5912#comment:33>
LFS Trac <https://wiki.linuxfromscratch.org/lfs/>
Linux From Scratch: Your Distro, Your Rules.

-- 
http://lists.linuxfromscratch.org/sympa/info/lfs-book
Unsubscribe: See the above information page
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.