The branch, master has been updated
       via  26065e1f1ee third_party:quic_ko_wrapper Fix compilation with 
clang-20
       via  de7932ea8d1 third_party:quic Fix compilation with clang-20
       via  149933854f3 third_party: fix libquic build on older systems
      from  246ce57e52e pytest:samba-tool group: remove unused imports

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 26065e1f1ee111f5ddfb64782638492af65aeb95
Author: Gary Lockyer <g...@catalyst.net.nz>
Date:   Fri Aug 15 09:38:07 2025 +1200

    third_party:quic_ko_wrapper Fix compilation with clang-20
    
    Rework the code to remove the non portable variable length array in the 
union.
    Based on the code in wrap_msghdr_add_cmsghdr().
    
    NOTE: this removes the 64 bit alignment, which I think should be ok.
    
    ./../third_party/quic_ko_wrapper/quic_ko_wrapper.c:3523:11: error:
       fields must have a constant size: 'variable length array in structure'
       extension will never be supported
      3523 |                 uint8_t cmbuf[cmspace];
           |                         ^
    1 error generated.
    
    Signed-off-by: Gary Lockyer <g...@catalyst.net.nz>
    Reviewed-by: Stefan Metzmacher <me...@samba.org>
    
    Autobuild-User(master): Björn Baumbach <b...@sernet.de>
    Autobuild-Date(master): Wed Aug 20 15:04:34 UTC 2025 on atb-devel-224

commit de7932ea8d12348208f50f7b050b826d236ea597
Author: Gary Lockyer <g...@catalyst.net.nz>
Date:   Fri Aug 15 09:33:24 2025 +1200

    third_party:quic Fix compilation with clang-20
    
    Add -Wno-error=format-nonliteral so that quic builds with clang 20
    
    ../../third_party/quic/libquic/handshake.c:106:35: error:
       format string is not a string literal [-Werror,-Wformat-nonliteral]
      106 |         rc = vsnprintf(msg, sizeof(msg), fmt, arg);
          |                                          ^~~
    ../../third_party/quic/libquic/handshake.c:135:35: error:
       format string is not a string literal [-Werror,-Wformat-nonliteral]
      135 |         rc = vsnprintf(msg, sizeof(msg), fmt, arg);
          |                                          ^~~
    ../../third_party/quic/libquic/handshake.c:164:35: error:
       format string is not a string literal [-Werror,-Wformat-nonliteral]
      164 |         rc = vsnprintf(msg, sizeof(msg), fmt, arg);
          |                                          ^~~
    
    Signed-off-by: Gary Lockyer <g...@catalyst.net.nz>
    Reviewed-by: Stefan Metzmacher <me...@samba.org>

commit 149933854f39b4628b14abc5dcd57e73e2a0a637
Author: Björn Baumbach <b...@sernet.de>
Date:   Fri Aug 8 17:31:34 2025 +0200

    third_party: fix libquic build on older systems
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=15896
    
    Pair-Programmed-With: Stefan Metzmacher <me...@samba.org>
    
    Signed-off-by: Björn Baumbach <b...@sernet.de>
    Signed-off-by: Stefan Metzmacher <me...@samba.org>
    Reviewed-by: Stefan Metzmacher <me...@samba.org>

-----------------------------------------------------------------------

Summary of changes:
 third_party/quic/libquic_handshake_wrapper.c  |  2 ++
 third_party/quic/wscript                      | 11 ++++++++++-
 third_party/quic_ko_wrapper/quic_ko_wrapper.c |  9 +++------
 3 files changed, 15 insertions(+), 7 deletions(-)
 create mode 100644 third_party/quic/libquic_handshake_wrapper.c


Changeset truncated at 500 lines:

diff --git a/third_party/quic/libquic_handshake_wrapper.c 
b/third_party/quic/libquic_handshake_wrapper.c
new file mode 100644
index 00000000000..3590eee5e11
--- /dev/null
+++ b/third_party/quic/libquic_handshake_wrapper.c
@@ -0,0 +1,2 @@
+#include "replace.h"
+#include "libquic/handshake.c"
diff --git a/third_party/quic/wscript b/third_party/quic/wscript
index 3715e35e022..6ad6096e476 100644
--- a/third_party/quic/wscript
+++ b/third_party/quic/wscript
@@ -19,6 +19,12 @@ def configure(conf):
         conf.SET_TARGET_TYPE('quic', 'EMPTY')
         return
 
+    if not conf.CHECK_DECLS('TLS_CIPHER_AES_GCM_256', headers='linux/tls.h'):
+        conf.DEFINE('TLS_CIPHER_AES_GCM_256', 52)
+
+    if not conf.CHECK_DECLS('TLS_CIPHER_AES_CCM_128', headers='linux/tls.h'):
+        conf.DEFINE('TLS_CIPHER_AES_CCM_128', 53)
+
     if not conf.CHECK_DECLS('TLS_CIPHER_CHACHA20_POLY1305', 
headers='linux/tls.h'):
         conf.DEFINE('TLS_CIPHER_CHACHA20_POLY1305', 54)
 
@@ -36,6 +42,9 @@ def configure(conf):
     conf.ADD_NAMED_CFLAGS('LIBQUIC_UNPICKY_CFLAGS',
                           '-Wno-error=cast-qual',
                           testflags=True)
+    conf.ADD_NAMED_CFLAGS('LIBQUIC_UNPICKY_CFLAGS',
+                          '-Wno-error=format-nonliteral',
+                          testflags=True)
 
     conf.DEFINE('HAVE_LIBQUIC', '1')
     return
@@ -46,7 +55,7 @@ def build(bld):
 
     bld.SAMBA_LIBRARY('quic',
                       source='''
-                      libquic/handshake.c
+                      libquic_handshake_wrapper.c
                       ''',
                       includes='libquic modules/include/uapi',
                       deps='replace',
diff --git a/third_party/quic_ko_wrapper/quic_ko_wrapper.c 
b/third_party/quic_ko_wrapper/quic_ko_wrapper.c
index 576d8809c67..977611fdb20 100644
--- a/third_party/quic_ko_wrapper/quic_ko_wrapper.c
+++ b/third_party/quic_ko_wrapper/quic_ko_wrapper.c
@@ -3518,15 +3518,12 @@ static void qwrap_msghdr_add_cmsghdr(struct msghdr *msg,
 {
        size_t cmlen = CMSG_LEN(len);
        size_t cmspace = CMSG_SPACE(len);
-       union {
-               uint64_t cmalign64;
-               uint8_t cmbuf[cmspace];
-       } cmu;
-       void *cast_ptr = (void *)cmu.cmbuf;
+       uint8_t cmbuf[cmspace];
+       void *cast_ptr = (void *)cmbuf;
        struct cmsghdr *cm = (struct cmsghdr *)cast_ptr;
        uint8_t *p;
 
-       memset(cmu.cmbuf, 0, cmspace);
+       memset(cmbuf, 0, cmspace);
 
        if (msg->msg_controllen < cmlen) {
                cmlen = msg->msg_controllen;


-- 
Samba Shared Repository

Reply via email to