==> Synchronizing chroot copy [/home/leming/armv8/root] -> [leming]...done
==> Making package: coturn 4.9.0-1 (Sat Feb 28 00:11:59 2026)
==> Retrieving sources...
  -> Found coturn-4.9.0.tar.gz
  -> Found turnserver.service
  -> Found turnserver.sysusers
  -> Found turnserver.tmpfiles
==> WARNING: Skipping verification of source file PGP signatures.
==> Validating source files with sha256sums...
    coturn-4.9.0.tar.gz ... Passed
    turnserver.service ... Passed
    turnserver.sysusers ... Passed
    turnserver.tmpfiles ... Passed
==> Making package: coturn 4.9.0-1 (Sat Feb 28 00:12:09 2026)
==> Checking runtime dependencies...
==> Installing missing dependencies...
resolving dependencies...
looking for conflicting packages...

Packages (4) liburing-2.14-1  hiredis-1.3.0-1  mariadb-libs-12.2.2-2  postgresql-libs-18.3-1

Total Download Size:    7.23 MiB
Total Installed Size:  40.33 MiB

:: Proceed with installation? [Y/n] 
:: Retrieving packages...
 mariadb-libs-12.2.2-2-aarch64 downloading...
 postgresql-libs-18.3-1-aarch64 downloading...
 liburing-2.14-1-aarch64 downloading...
 hiredis-1.3.0-1-aarch64 downloading...
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
checking available disk space...
:: Processing package changes...
installing postgresql-libs...
installing liburing...
installing mariadb-libs...
Optional dependencies for mariadb-libs
    krb5: for gssapi authentication [installed]
installing hiredis...
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found coturn-4.9.0.tar.gz
  -> Found turnserver.service
  -> Found turnserver.sysusers
  -> Found turnserver.tmpfiles
==> WARNING: Skipping all source file integrity checks.
==> Extracting sources...
  -> Extracting coturn-4.9.0.tar.gz with bsdtar
==> Starting build()...
install is /usr/bin/install
sqlite3 is /usr/bin/sqlite3
Use TMP dir /var/tmp
Compiler: cc
pkgconf is /usr/bin/pkgconf
pkg-config: pkgconf
Library option -lsocket cannot be used
Library option -lwldap32 cannot be used
Library option -lwldap64 cannot be used
Sockets code is fine: no sin_len field present
Ignore IP_RECVERR
OpenSSL Crypto lib found.
OpenSSL lib found.
Libevent2 runtime found.
Library option -lprom cannot be used

Warning: Libprom development libraries are not installed properly in required location.
Prometheus support will be disabled.
See the docs/Prometheus.md file.

Systemd library found.
SQLite3 library found.
PostgreSQL found.
MySQL found.
MongoDB not found. Building without MongoDB support.
Hiredis found.
PREFIX=/usr LOCALSTATEDIR=/var OSLIBS=-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -lrt -lnsl -lresolv -lcrypto -lssl -levent_core -levent_extra -levent_openssl -levent_pthreads -levent -lsystemd DBLIBS= -lsqlite3 -lpq -L/usr/lib/ -lmariadb -lhiredis OSCFLAGS=-g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  DBCFLAGS=   -I/usr/include/mysql/ -I/usr/include/hiredis -D_FILE_OFFSET_BITS=64 --prefix=/usr --manprefix=/usr/share --examplesdir=/usr/share/turnserver/examples --disable-rpath
Makefile created: success.
mkdir -p build/obj
mkdir -p build/obj
mkdir -p build/obj
cc  -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  -Isrc -Isrc/apps/common -Isrc/server -Isrc/client -Isrc/client++ -I/usr/include/ -I/usr/local/include/ -c src/client/ns_turn_ioaddr.c -o build/obj/ns_turn_ioaddr.o
cc  -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  -Isrc -Isrc/apps/common -Isrc/server -Isrc/client -Isrc/client++ -I/usr/include/ -I/usr/local/include/ -c src/client/ns_turn_msg_addr.c -o build/obj/ns_turn_msg_addr.o
cc  -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  -Isrc -Isrc/apps/common -Isrc/server -Isrc/client -Isrc/client++ -I/usr/include/ -I/usr/local/include/ -c src/client/ns_turn_msg.c -o build/obj/ns_turn_msg.o
rm -rf include
install -d sqlite
mkdir -p include/turn/client
rm -rf sqlite/turndb
cp -pf src/client/*.h include/turn/client/
sqlite3 sqlite/turndb < turndb/schema.sql
cp -pf src/client++/*.h include/turn/client/
cp -pf src/ns_turn_defs.h include/turn/
src/client/ns_turn_ioaddr.c: In function 'make_ioa_addr':
src/client/ns_turn_ioaddr.c:225:194: warning: '__builtin_strncpy' specified bound 257 equals destination size [-Wstringop-truncation]
src/client/ns_turn_msg.c: In function 'stun_produce_integrity_key_str':
src/client/ns_turn_msg.c:196:3: warning: '__builtin___strncpy_chk' specified bound depends on the length of the source argument [-Wstringop-truncation]
src/client/ns_turn_msg.c:181:23: note: length computed here
src/client/ns_turn_msg.c: In function 'stun_attr_add_integrity_str':
src/client/ns_turn_msg.c:1783:8: warning: 'hmac' may be used uninitialized [-Wmaybe-uninitialized]
src/client/ns_turn_msg.c:1450:6: note: by argument 4 of type 'const uint8_t *' {aka 'const unsigned char *'} to 'stun_attr_add_str' declared here
src/client/ns_turn_msg.c:1765:11: note: 'hmac' declared here
src/client/ns_turn_msg.c: In function 'convert_oauth_key_data':
src/client/ns_turn_msg.c:2119:210: warning: '__builtin_strncpy' output may be truncated copying 129 bytes from a string of length 479 [-Wstringop-truncation]
mkdir -p lib
ar -r lib/libturnclient.a build/obj/ns_turn_ioaddr.o build/obj/ns_turn_msg_addr.o build/obj/ns_turn_msg.o
ar: creating lib/libturnclient.a
pwd
pwd
pwd
pwd
mkdir -p bin
/build/coturn/src/coturn-4.9.0
/build/coturn/src/coturn-4.9.0
/build/coturn/src/coturn-4.9.0
mkdir -p bin
mkdir -p bin
mkdir -p bin
mkdir -p bin
mkdir -p bin
/build/coturn/src/coturn-4.9.0
mkdir -p bin
cc  -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  -Isrc -Isrc/apps/common -Isrc/server -Isrc/client -Isrc/client++ -I/usr/include/ -I/usr/local/include/ src/apps/uclient/uclient.c src/apps/uclient/startuclient.c src/apps/uclient/mainuclient.c src/apps/common/apputils.c src/apps/common/ns_turn_utils.c src/apps/common/stun_buffer.c -o bin/turnutils_uclient -Llib -lturnclient -Llib -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -lrt -lnsl -lresolv -lcrypto -lssl -levent_core -levent_extra -levent_openssl -levent_pthreads -levent -lsystemd
cc  -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  -Isrc -Isrc/apps/common -Isrc/server -Isrc/client -Isrc/client++ -I/usr/include/ -I/usr/local/include/ src/apps/oauth/oauth.c src/apps/common/apputils.c src/apps/common/ns_turn_utils.c src/apps/common/stun_buffer.c -o bin/turnutils_oauth -Llib -lturnclient -Llib -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -lrt -lnsl -lresolv -lcrypto -lssl -levent_core -levent_extra -levent_openssl -levent_pthreads -levent -lsystemd
cc  -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  -Isrc -Isrc/apps/common -Isrc/server -Isrc/client -Isrc/client++ -I/usr/include/ -I/usr/local/include/ src/apps/natdiscovery/natdiscovery.c src/apps/common/apputils.c src/apps/common/ns_turn_utils.c src/apps/common/stun_buffer.c -o bin/turnutils_natdiscovery -Llib -lturnclient -Llib -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -lrt -lnsl -lresolv -lcrypto -lssl -levent_core -levent_extra -levent_openssl -levent_pthreads -levent -lsystemd
cc  -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  -Isrc -Isrc/apps/common -Isrc/server -Isrc/client -Isrc/client++ -I/usr/include/ -I/usr/local/include/ src/apps/stunclient/stunclient.c src/apps/common/apputils.c src/apps/common/ns_turn_utils.c src/apps/common/stun_buffer.c -o bin/turnutils_stunclient -Llib -lturnclient -Llib -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -lrt -lnsl -lresolv -lcrypto -lssl -levent_core -levent_extra -levent_openssl -levent_pthreads -levent -lsystemd
rm -rf bin/turnadmin
cc  -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  -Isrc -Isrc/apps/common -Isrc/server -Isrc/client -Isrc/client++ -I/usr/include/ -I/usr/local/include/ src/apps/peer/mainudpserver.c src/apps/peer/udpserver.c src/apps/common/apputils.c src/apps/common/ns_turn_utils.c src/apps/common/stun_buffer.c -o bin/turnutils_peer -Llib -lturnclient -Llib -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -lrt -lnsl -lresolv -lcrypto -lssl -levent_core -levent_extra -levent_openssl -levent_pthreads -levent -lsystemd  
cc  -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  -Isrc -Isrc/apps/common -Isrc/server -Isrc/client -Isrc/client++ -I/usr/include/ -I/usr/local/include/ src/apps/rfc5769/rfc5769check.c src/apps/common/apputils.c src/apps/common/ns_turn_utils.c src/apps/common/stun_buffer.c -o bin/turnutils_rfc5769check -Llib -lturnclient -Llib -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -lrt -lnsl -lresolv -lcrypto -lssl -levent_core -levent_extra -levent_openssl -levent_pthreads -levent -lsystemd
cc  -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -g  -Wall -Wno-deprecated-declarations -Wextra -Wformat-security -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Wcast-qual -march=armv8-a -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -ffat-lto-objects -DLIBEV_OK -DTURN_HAS_DAEMON    -DTURN_NO_PROMETHEUS  -DTURN_NO_SCTP      -DINSTALL_PREFIX=/usr -DTURNDB=/var/db/turndb  -Isrc -Isrc/apps/common -Isrc/server -Isrc/client -Isrc/client++ -I/usr/include/ -I/usr/local/include/ -I/usr/include/mysql/ -I/usr/include/hiredis -D_FILE_OFFSET_BITS=64    -DTURN_NO_MONGO   src/apps/relay/ns_ioalib_engine_impl.c src/apps/relay/turn_ports.c src/apps/relay/http_server.c src/apps/relay/acme.c -Ilib src/apps/relay/mainrelay.c src/apps/relay/netengine.c src/apps/relay/libtelnet.c src/apps/relay/turn_admin_server.c src/apps/relay/userdb.c src/apps/relay/tls_listener.c src/apps/relay/dtls_listener.c src/apps/relay/prom_server.c src/apps/relay/hiredis_libevent2.c src/apps/relay/dbdrivers/dbdriver.c src/apps/relay/dbdrivers/dbd_sqlite.c src/apps/relay/dbdrivers/dbd_pgsql.c src/apps/relay/dbdrivers/dbd_mysql.c src/apps/relay/dbdrivers/dbd_mongo.c src/apps/relay/dbdrivers/dbd_redis.c src/apps/common/apputils.c src/apps/common/ns_turn_utils.c src/apps/common/stun_buffer.c src/client/ns_turn_ioaddr.c src/client/ns_turn_msg_addr.c src/client/ns_turn_msg.c src/server/ns_turn_allocation.c src/server/ns_turn_maps_rtcp.c src/server/ns_turn_maps.c src/server/ns_turn_server.c -o bin/turnserver -lsqlite3 -lpq -L/usr/lib/ -lmariadb -lhiredis -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -lrt -lnsl -lresolv -lcrypto -lssl -levent_core -levent_extra -levent_openssl -levent_pthreads -levent -lsystemd
In file included from src/client/ns_turn_msg.h:38,
                 from src/apps/common/apputils.c:35:
src/apps/common/apputils.c: In function ‘print_abs_file_name’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/apputils.c:1096:9: note: in expansion of macro ‘STRCPY’
 1096 |         STRCPY(absfn, fn);
      |         ^~~~~~
In file included from src/client/ns_turn_msg.h:38,
                 from src/apps/common/apputils.c:35:
src/apps/common/apputils.c: In function ‘print_abs_file_name’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/apputils.c:1096:9: note: in expansion of macro ‘STRCPY’
 1096 |         STRCPY(absfn, fn);
      |         ^~~~~~
In file included from src/client/ns_turn_msg.h:38,
                 from src/apps/common/apputils.c:35:
src/apps/common/apputils.c: In function ‘print_abs_file_name’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/apputils.c:1096:9: note: in expansion of macro ‘STRCPY’
 1096 |         STRCPY(absfn, fn);
      |         ^~~~~~
In file included from src/apps/common/ns_turn_utils.h:48,
                 from src/apps/common/ns_turn_utils.c:35:
src/apps/common/ns_turn_utils.c: In function ‘set_logfile’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/ns_turn_utils.c:314:7: note: in expansion of macro ‘STRCPY’
  314 |       STRCPY(log_fn_base, fn);
      |       ^~~~~~
In file included from src/apps/common/ns_turn_utils.h:48,
                 from src/apps/common/ns_turn_utils.c:35:
src/apps/common/ns_turn_utils.c: In function ‘set_logfile’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/ns_turn_utils.c:314:7: note: in expansion of macro ‘STRCPY’
  314 |       STRCPY(log_fn_base, fn);
      |       ^~~~~~
In file included from src/apps/common/ns_turn_utils.h:48,
                 from src/apps/common/ns_turn_utils.c:35:
src/apps/common/ns_turn_utils.c: In function ‘set_logfile’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/ns_turn_utils.c:314:7: note: in expansion of macro ‘STRCPY’
  314 |       STRCPY(log_fn_base, fn);
      |       ^~~~~~
In file included from src/apps/uclient/startuclient.c:35:
src/apps/uclient/startuclient.c: In function ‘clnet_connect’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 129 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/startuclient.c:287:5: note: in expansion of macro ‘STRCPY’
  287 |     STRCPY(clnet_info->lsaddr, local_address);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 129 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/startuclient.c:288:5: note: in expansion of macro ‘STRCPY’
  288 |     STRCPY(clnet_info->rsaddr, remote_address);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 129 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/startuclient.c:289:5: note: in expansion of macro ‘STRCPY’
  289 |     STRCPY(clnet_info->ifname, (const char *)ifname);
      |     ^~~~~~
src/apps/uclient/startuclient.c: In function ‘start_connection’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/startuclient.c:965:3: note: in expansion of macro ‘STRCPY’
  965 |   STRCPY(remote_address, remote_address0);
      |   ^~~~~~
src/apps/uclient/startuclient.c: In function ‘start_c2c_connection’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/startuclient.c:1201:3: note: in expansion of macro ‘STRCPY’
 1201 |   STRCPY(remote_address, remote_address0);
      |   ^~~~~~
In file included from src/apps/common/apputils.h:42,
                 from src/apps/uclient/mainuclient.c:34:
src/apps/uclient/mainuclient.c: In function ‘main’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 513 bytes from a string of length 1024 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/mainuclient.c:401:7: note: in expansion of macro ‘STRCPY’
  401 |       STRCPY(g_uname, new_uname);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/mainuclient.c:285:7: note: in expansion of macro ‘STRCPY’
  285 |       STRCPY(g_upwd, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 513 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/mainuclient.c:282:7: note: in expansion of macro ‘STRCPY’
  282 |       STRCPY(g_uname, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/mainuclient.c:235:7: note: in expansion of macro ‘STRCPY’
  235 |       STRCPY(origin, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/mainuclient.c:377:7: note: in expansion of macro ‘STRCPY’
  377 |       STRCPY(pkey_file, fn);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/mainuclient.c:368:7: note: in expansion of macro ‘STRCPY’
  368 |       STRCPY(cert_file, fn);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/mainuclient.c:291:7: note: in expansion of macro ‘STRCPY’
  291 |       STRCPY(client_ifname, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/mainuclient.c:360:7: note: in expansion of macro ‘STRCPY’
  360 |       STRCPY(g_auth_secret, optarg);
      |       ^~~~~~
In file included from src/apps/common/apputils.h:42,
                 from src/apps/peer/mainudpserver.c:35:
src/apps/peer/mainudpserver.c: In function ‘main’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/mainuclient.c:244:7: note: in expansion of macro ‘STRCPY’
  244 |       STRCPY(cipher_suite, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/peer/mainudpserver.c:81:7: note: in expansion of macro ‘STRCPY’
   81 |       STRCPY(ifname, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/uclient/mainuclient.c:258:7: note: in expansion of macro ‘STRCPY’
  258 |       STRCPY(ca_cert_file, fn);
      |       ^~~~~~
In file included from src/apps/common/apputils.h:42,
                 from src/apps/rfc5769/rfc5769check.c:46:
src/apps/rfc5769/rfc5769check.c: In function ‘main’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/rfc5769/rfc5769check.c:122:13: note: in expansion of macro ‘STRCPY’
  122 |             STRCPY(okdr.ikm_key, base64encoded_ltp);
      |             ^~~~~~
In file included from src/apps/common/ns_turn_utils.h:48,
                 from src/apps/peer/udpserver.h:40,
                 from src/apps/peer/udpserver.c:35:
src/apps/peer/udpserver.c: In function ‘udp_create_server_socket.isra’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/peer/udpserver.c:87:3: note: in expansion of macro ‘STRCPY’
   87 |   STRCPY(server->ifname, ifname);
      |   ^~~~~~
In file included from src/client/ns_turn_msg.h:38,
                 from src/apps/common/apputils.c:35:
src/apps/common/apputils.c: In function ‘print_abs_file_name’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/apputils.c:1096:9: note: in expansion of macro ‘STRCPY’
 1096 |         STRCPY(absfn, fn);
      |         ^~~~~~
In file included from src/client/ns_turn_msg.h:38,
                 from src/apps/common/apputils.c:35:
src/apps/common/apputils.c: In function ‘print_abs_file_name’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/apputils.c:1096:9: note: in expansion of macro ‘STRCPY’
 1096 |         STRCPY(absfn, fn);
      |         ^~~~~~
In file included from src/client/ns_turn_msg.h:38,
                 from src/apps/common/apputils.c:35:
src/apps/common/apputils.c: In function ‘print_abs_file_name’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/apputils.c:1096:9: note: in expansion of macro ‘STRCPY’
 1096 |         STRCPY(absfn, fn);
      |         ^~~~~~
In file included from src/apps/common/ns_turn_utils.h:48,
                 from src/apps/common/ns_turn_utils.c:35:
src/apps/common/ns_turn_utils.c: In function ‘set_logfile’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/ns_turn_utils.c:314:7: note: in expansion of macro ‘STRCPY’
  314 |       STRCPY(log_fn_base, fn);
      |       ^~~~~~
In file included from src/apps/common/ns_turn_utils.h:48,
                 from src/apps/common/ns_turn_utils.c:35:
src/apps/common/ns_turn_utils.c: In function ‘set_logfile’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/ns_turn_utils.c:314:7: note: in expansion of macro ‘STRCPY’
  314 |       STRCPY(log_fn_base, fn);
      |       ^~~~~~
In file included from src/apps/common/ns_turn_utils.h:48,
                 from src/apps/common/ns_turn_utils.c:35:
src/apps/common/ns_turn_utils.c: In function ‘set_logfile’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/ns_turn_utils.c:314:7: note: in expansion of macro ‘STRCPY’
  314 |       STRCPY(log_fn_base, fn);
      |       ^~~~~~
In file included from src/server/ns_turn_allocation.h:38,
                 from src/server/ns_turn_session.h:38,
                 from src/server/ns_turn_server.h:38,
                 from src/apps/relay/ns_ioalib_engine_impl.c:36:
src/apps/relay/ns_ioalib_engine_impl.c: In function ‘create_ioa_engine’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/ns_ioalib_engine_impl.c:450:7: note: in expansion of macro ‘STRCPY’
  450 |       STRCPY(e->relay_ifname, relay_ifname);
      |       ^~~~~~
src/apps/relay/turn_ports.c: In function ‘turnports_allocate_even’:
src/apps/relay/turn_ports.c:221:48: warning: unused parameter ‘allocate_rtcp’ [-Wunused-parameter]
  221 | int turnports_allocate_even(turnports *tp, int allocate_rtcp, uint64_t *reservation_token) {
      |                                            ~~~~^~~~~~~~~~~~~
src/apps/relay/mainrelay.c: In function ‘set_ctx’:
src/apps/relay/mainrelay.c:3728:5: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
 3728 |     strncpy(turn_params.cipher_list, DEFAULT_CIPHER_LIST, TURN_LONG_STRING_SIZE);
      |     ^
In file included from src/apps/common/ns_turn_utils.h:48,
                 from src/apps/relay/mainrelay.h:74,
                 from src/apps/relay/mainrelay.c:35:
src/apps/relay/mainrelay.c: In function ‘set_option’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2431:5: note: in expansion of macro ‘STRCPY’
 2431 |     STRCPY(turn_params.acme_redirect, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2394:5: note: in expansion of macro ‘STRCPY’
 2394 |     STRCPY(turn_params.secret_key_file, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:1982:5: note: in expansion of macro ‘STRCPY’
 1982 |     STRCPY(turn_params.oauth_server_name, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2083:7: note: in expansion of macro ‘STRCPY’
 2083 |       STRCPY(procgroupname, value);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2072:7: note: in expansion of macro ‘STRCPY’
 2072 |       STRCPY(procusername, value);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2391:5: note: in expansion of macro ‘STRCPY’
 2391 |     STRCPY(turn_params.dh_file, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2388:5: note: in expansion of macro ‘STRCPY’
 2388 |     STRCPY(turn_params.ca_cert_file, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2428:5: note: in expansion of macro ‘STRCPY’
 2428 |     STRCPY(turn_params.pidfile, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2425:5: note: in expansion of macro ‘STRCPY’
 2425 |     STRCPY(turn_params.cipher_list, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2303:5: note: in expansion of macro ‘STRCPY’
 2303 |     STRCPY(turn_params.prometheus_path, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 513 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2400:5: note: in expansion of macro ‘STRCPY’
 2400 |     STRCPY(turn_params.tls_password, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2397:5: note: in expansion of macro ‘STRCPY’
 2397 |     STRCPY(turn_params.pkey_file, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2382:5: note: in expansion of macro ‘STRCPY’
 2382 |     STRCPY(turn_params.cert_file, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2088:5: note: in expansion of macro ‘STRCPY’
 2088 |     STRCPY(turn_params.relay_ifname, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2267:5: note: in expansion of macro ‘STRCPY’
 2267 |     STRCPY(turn_params.default_users_db.persistent_users_db.userdb, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2101:5: note: in expansion of macro ‘STRCPY’
 2101 |     STRCPY(turn_params.listener_ifname, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2261:5: note: in expansion of macro ‘STRCPY’
 2261 |     STRCPY(turn_params.default_users_db.persistent_users_db.userdb, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2289:5: note: in expansion of macro ‘STRCPY’
 2289 |     STRCPY(turn_params.redis_statsdb.connection_string, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2285:5: note: in expansion of macro ‘STRCPY’
 2285 |     STRCPY(turn_params.default_users_db.persistent_users_db.userdb, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2273:5: note: in expansion of macro ‘STRCPY’
 2273 |     STRCPY(turn_params.default_users_db.persistent_users_db.userdb, value);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2494:5: note: in expansion of macro ‘STRCPY’
 2494 |     STRCPY(turn_params.default_users_db.persistent_users_db.userdb_sanitized, userdb_sanitized);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2499:5: note: in expansion of macro ‘STRCPY’
 2499 |     STRCPY(turn_params.redis_statsdb.connection_string_sanitized, connection_string);
      |     ^~~~~~
src/apps/relay/mainrelay.c: In function ‘read_config_file’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2554:13: note: in expansion of macro ‘STRCPY’
 2554 |             STRCPY(config_file, argv[i + 1]);
      |             ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1035 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2609:11: note: in expansion of macro ‘STRCPY’
 2609 |           STRCPY(sarg, s);
      |           ^~~~~~
src/apps/relay/mainrelay.c: In function ‘main’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 128 bytes from a string of length 1024 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:3182:5: note: in expansion of macro ‘STRCPY’
 3182 |     STRCPY(get_realm(NULL)->options.name, turn_params.domain);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 2049 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:3420:13: note: in expansion of macro ‘STRCPY’
 3420 |             STRCPY(s, *ppfs);
      |             ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 513 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2794:7: note: in expansion of macro ‘STRCPY’
 2794 |       STRCPY(user, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2749:7: note: in expansion of macro ‘STRCPY’
 2749 |       STRCPY(secret, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2813:7: note: in expansion of macro ‘STRCPY’
 2813 |       STRCPY(pwd, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2771:7: note: in expansion of macro ‘STRCPY’
 2771 |       STRCPY(turn_params.default_users_db.persistent_users_db.userdb, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2765:7: note: in expansion of macro ‘STRCPY’
 2765 |       STRCPY(turn_params.default_users_db.persistent_users_db.userdb, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2757:9: note: in expansion of macro ‘STRCPY’
 2757 |         STRCPY(secret, optarg);
      |         ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2789:7: note: in expansion of macro ‘STRCPY’
 2789 |       STRCPY(turn_params.default_users_db.persistent_users_db.userdb, optarg);
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/mainrelay.c:2777:7: note: in expansion of macro ‘STRCPY’
 2777 |       STRCPY(turn_params.default_users_db.persistent_users_db.userdb, optarg);
      |       ^~~~~~
In file included from src/apps/common/ns_turn_utils.h:48,
                 from src/apps/relay/mainrelay.h:74,
                 from src/apps/relay/turn_admin_server.c:69:
src/apps/relay/turn_admin_server.c: In function ‘cli_telnet_event_handler’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:1023:9: note: in expansion of macro ‘STRCPY’
 1023 |         STRCPY(cs->origin, cmd + 3);
      |         ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:1015:9: note: in expansion of macro ‘STRCPY’
 1015 |         STRCPY(cs->realm, cmd + 3);
      |         ^~~~~~
src/apps/relay/turn_admin_server.c: In function ‘handle_https’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3750:17: note: in expansion of macro ‘STRCPY’
 3750 |                 STRCPY(key.realm, add_realm);
      |                 ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3753:15: note: in expansion of macro ‘STRCPY’
 3753 |               STRCPY(key.ikm_key, add_ikm);
      |               ^~~~~~
src/apps/relay/turn_admin_server.c:3627:13: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
 3627 |             strncpy(current_eff_realm(), realm0, STUN_MAX_REALM_SIZE);
      |             ^
src/apps/relay/turn_admin_server.c:3627:13: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
src/apps/relay/turn_admin_server.c:3627:13: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
src/apps/relay/turn_admin_server.c:3627:13: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 127 [-Wstringop-truncation]
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 127 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3666:17: note: in expansion of macro ‘STRCPY’
 3666 |                 STRCPY(o, corigin);
      |                 ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3667:17: note: in expansion of macro ‘STRCPY’
 3667 |                 STRCPY(r, add_realm);
      |                 ^~~~~~
src/apps/relay/turn_admin_server.c:3553:13: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
 3553 |             strncpy(current_eff_realm(), realm0, STUN_MAX_REALM_SIZE);
      |             ^
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3568:19: note: in expansion of macro ‘STRCPY’
 3568 |                   STRCPY(ss, secret);
      |                   ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3569:19: note: in expansion of macro ‘STRCPY’
 3569 |                   STRCPY(r, realm);
      |                   ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3603:17: note: in expansion of macro ‘STRCPY’
 3603 |                 STRCPY(ss, add_secret);
      |                 ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3604:17: note: in expansion of macro ‘STRCPY’
 3604 |                 STRCPY(r, add_realm);
      |                 ^~~~~~
src/apps/relay/turn_admin_server.c:3452:13: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
 3452 |             strncpy(current_eff_realm(), realm0, STUN_MAX_REALM_SIZE);
      |             ^
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 513 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3467:19: note: in expansion of macro ‘STRCPY’
 3467 |                   STRCPY(u, user);
      |                   ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3468:19: note: in expansion of macro ‘STRCPY’
 3468 |                   STRCPY(r, realm);
      |                   ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 513 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3512:21: note: in expansion of macro ‘STRCPY’
 3512 |                     STRCPY(u, add_user);
      |                     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3513:21: note: in expansion of macro ‘STRCPY’
 3513 |                     STRCPY(r, add_realm);
      |                     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3514:21: note: in expansion of macro ‘STRCPY’
 3514 |                     STRCPY(p, pwd);
      |                     ^~~~~~
src/apps/relay/turn_admin_server.c:3412:11: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
 3412 |           strncpy(current_eff_realm(), realm0, STUN_MAX_REALM_SIZE);
      |           ^
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3270:13: note: in expansion of macro ‘STRCPY’
 3270 |             STRCPY(realm, r);
      |             ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3305:15: note: in expansion of macro ‘STRCPY’
 3305 |               STRCPY(realm, r);
      |               ^~~~~~
src/apps/relay/turn_admin_server.c:3399:11: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
 3399 |           strncpy(current_eff_realm(), realm0, STUN_MAX_REALM_SIZE);
      |           ^
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 33 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/turn_admin_server.c:3339:13: note: in expansion of macro ‘STRCPY’
 3339 |             STRCPY(as->as_login, uname);
      |             ^~~~~~
src/apps/relay/turn_admin_server.c:3813:9: warning: ‘__builtin_strncpy’ output may be truncated copying 127 bytes from a string of length 1024 [-Wstringop-truncation]
 3813 |         strncpy(current_eff_realm(), realm0, STUN_MAX_REALM_SIZE);
      |         ^
In file included from src/server/ns_turn_maps.h:38,
                 from src/apps/relay/dbdrivers/../userdb.h:43,
                 from src/apps/relay/dbdrivers/dbdriver.h:39,
                 from src/apps/relay/userdb.c:55:
src/apps/relay/userdb.c: In function ‘set_default_realm_name’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/userdb.c:147:3: note: in expansion of macro ‘STRCPY’
  147 |   STRCPY(default_realm_params_ptr->options.name, realm);
      |   ^~~~~~
src/apps/relay/userdb.c: In function ‘get_realm.part.0’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/userdb.c:168:7: note: in expansion of macro ‘STRCPY’
  168 |       STRCPY(ret->options.name, name);
      |       ^~~~~~
src/apps/relay/userdb.c: In function ‘start_user_check’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 513 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/userdb.c:652:3: note: in expansion of macro ‘STRCPY’
  652 |   STRCPY(am.username, usname);
      |   ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/userdb.c:653:3: note: in expansion of macro ‘STRCPY’
  653 |   STRCPY(am.realm, realm);
      |   ^~~~~~
src/apps/relay/userdb.c: In function ‘add_ip_list_range’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin___strncpy_chk’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/userdb.c:1259:3: note: in expansion of macro ‘STRCPY’
 1259 |   STRCPY(list->rs[list->ranges_number - 1].str, range);
      |   ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 513 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/userdb.c:1261:5: note: in expansion of macro ‘STRCPY’
 1261 |     STRCPY(list->rs[list->ranges_number - 1].realm, realm);
      |     ^~~~~~
In file included from src/apps/common/apputils.h:42,
                 from src/apps/relay/tls_listener.c:35:
src/apps/relay/tls_listener.c: In function ‘create_tls_listener_server’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/tls_listener.c:319:5: note: in expansion of macro ‘STRCPY’
  319 |     STRCPY(server->ifname, ifname);
      |     ^~~~~~
src/apps/relay/dtls_listener.c: In function ‘print_packet_txt2pcap’:
src/apps/relay/dtls_listener.c:159:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  159 |     if (n < 0 || n >= txt2pcap_length - index) {
      |                    ^~
In file included from src/apps/common/apputils.h:42,
                 from src/apps/relay/dtls_listener.c:35:
src/apps/relay/dtls_listener.c: In function ‘create_dtls_listener_server’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dtls_listener.c:976:5: note: in expansion of macro ‘STRCPY’
  976 |     STRCPY(server->ifname, ifname);
      |     ^~~~~~
src/apps/relay/dbdrivers/dbd_sqlite.c: In function ‘get_sqlite_connection’:
src/apps/relay/dbdrivers/dbd_sqlite.c:151:5: warning: ‘__builtin___strncpy_chk’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
  151 |     strncpy(dir_fixed, home, szh);
      |     ^
In function ‘fix_user_directory’,
    inlined from ‘get_sqlite_connection’ at src/apps/relay/dbdrivers/dbd_sqlite.c:196:3:
src/apps/relay/dbdrivers/dbd_sqlite.c:148:24: note: length computed here
  148 |     const size_t szh = strlen(home);
      |                        ^~~~~~~~~~~~
In file included from src/server/ns_turn_maps.h:38,
                 from src/apps/relay/dbdrivers/../userdb.h:43,
                 from src/apps/relay/dbdrivers/dbdriver.h:39,
                 from src/apps/relay/dbdrivers/dbd_sqlite.h:39,
                 from src/apps/relay/dbdrivers/dbd_sqlite.c:36:
src/apps/relay/dbdrivers/dbd_sqlite.c: In function ‘sqlite_get_oauth_key’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_sqlite.c:328:7: note: in expansion of macro ‘STRCPY’
  328 |       STRCPY(key->ikm_key, sqlite3_column_text(st, 0));
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 65 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_sqlite.c:331:7: note: in expansion of macro ‘STRCPY’
  331 |       STRCPY(key->as_rs_alg, sqlite3_column_text(st, 3));
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_sqlite.c:332:7: note: in expansion of macro ‘STRCPY’
  332 |       STRCPY(key->realm, sqlite3_column_text(st, 4));
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 129 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_sqlite.c:333:7: note: in expansion of macro ‘STRCPY’
  333 |       STRCPY(key->kid, kid);
      |       ^~~~~~
In file included from src/server/ns_turn_maps.h:38,
                 from src/apps/relay/dbdrivers/../userdb.h:43,
                 from src/apps/relay/dbdrivers/dbdriver.h:39,
                 from src/apps/relay/dbdrivers/dbd_pgsql.h:39,
                 from src/apps/relay/dbdrivers/dbd_pgsql.c:36:
src/apps/relay/dbdrivers/dbd_pgsql.c: In function ‘pgsql_get_oauth_key’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_pgsql.c:184:7: note: in expansion of macro ‘STRCPY’
  184 |       STRCPY(key->ikm_key, PQgetvalue(res, 0, 0));
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 65 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_pgsql.c:187:7: note: in expansion of macro ‘STRCPY’
  187 |       STRCPY(key->as_rs_alg, PQgetvalue(res, 0, 3));
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_pgsql.c:188:7: note: in expansion of macro ‘STRCPY’
  188 |       STRCPY(key->realm, PQgetvalue(res, 0, 4));
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 129 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_pgsql.c:189:7: note: in expansion of macro ‘STRCPY’
  189 |       STRCPY(key->kid, kid);
      |       ^~~~~~
In file included from src/server/ns_turn_maps.h:38,
                 from src/apps/relay/dbdrivers/../userdb.h:43,
                 from src/apps/relay/dbdrivers/dbdriver.h:39,
                 from src/apps/relay/dbdrivers/dbd_mysql.h:39,
                 from src/apps/relay/dbdrivers/dbd_mysql.c:36:
src/apps/relay/dbdrivers/dbd_mysql.c: In function ‘mysql_get_oauth_key’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 129 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_mysql.c:443:13: note: in expansion of macro ‘STRCPY’
  443 |             STRCPY(key->kid, kid);
      |             ^~~~~~
In file included from src/server/ns_turn_maps.h:38,
                 from src/apps/relay/dbdrivers/../userdb.h:43,
                 from src/apps/relay/dbdrivers/dbdriver.h:39,
                 from src/apps/relay/dbdrivers/dbd_redis.h:40,
                 from src/apps/relay/dbdrivers/dbd_redis.c:36:
src/apps/relay/dbdrivers/dbd_redis.c: In function ‘redis_get_oauth_key’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 129 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_redis.c:506:5: note: in expansion of macro ‘STRCPY’
  506 |     STRCPY(key->kid, kid);
      |     ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_redis.c:527:15: note: in expansion of macro ‘STRCPY’
  527 |               STRCPY(key->ikm_key, val);
      |               ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_redis.c:525:15: note: in expansion of macro ‘STRCPY’
  525 |               STRCPY(key->realm, val);
      |               ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 65 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/relay/dbdrivers/dbd_redis.c:523:15: note: in expansion of macro ‘STRCPY’
  523 |               STRCPY(key->as_rs_alg, val);
      |               ^~~~~~
In file included from src/client/ns_turn_msg.h:38,
                 from src/apps/common/apputils.c:35:
src/apps/common/apputils.c: In function ‘print_abs_file_name’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/apputils.c:1096:9: note: in expansion of macro ‘STRCPY’
 1096 |         STRCPY(absfn, fn);
      |         ^~~~~~
In file included from src/apps/common/ns_turn_utils.h:48,
                 from src/apps/common/ns_turn_utils.c:35:
src/apps/common/ns_turn_utils.c: In function ‘set_logfile’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 1025 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/apps/common/ns_turn_utils.c:314:7: note: in expansion of macro ‘STRCPY’
  314 |       STRCPY(log_fn_base, fn);
      |       ^~~~~~
In file included from src/client/ns_turn_ioaddr.h:38,
                 from src/client/ns_turn_ioaddr.c:35:
src/client/ns_turn_ioaddr.c: In function ‘make_ioa_addr’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 257 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/client/ns_turn_ioaddr.c:225:3: note: in expansion of macro ‘STRCPY’
  225 |   STRCPY(ssaddr, saddr0);
      |   ^~~~~~
src/client/ns_turn_msg.c: In function ‘stun_produce_integrity_key_str’:
src/client/ns_turn_msg.c:196:3: warning: ‘__builtin___strncpy_chk’ specified bound depends on the length of the source argument [-Wstringop-truncation]
  196 |   strncpy((char *)str + ulen + 1, (const char *)realm, sz - ulen - 1);
      |   ^
src/client/ns_turn_msg.c:181:23: note: length computed here
  181 |   const size_t rlen = strlen((const char *)realm);
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/client/ns_turn_msg.c: In function ‘stun_attr_add_integrity_str’:
src/client/ns_turn_msg.c:1783:8: warning: ‘hmac’ may be used uninitialized [-Wmaybe-uninitialized]
 1783 |   if (!stun_attr_add_str(buf, len, STUN_ATTRIBUTE_MESSAGE_INTEGRITY, hmac, shasize)) {
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/client/ns_turn_msg.c:1450:6: note: by argument 4 of type ‘const uint8_t *’ {aka ‘const unsigned char *’} to ‘stun_attr_add_str’ declared here
 1450 | bool stun_attr_add_str(uint8_t *buf, size_t *len, uint16_t attr, const uint8_t *avalue, int alen) {
      |      ^~~~~~~~~~~~~~~~~
src/client/ns_turn_msg.c:1765:11: note: ‘hmac’ declared here
 1765 |   uint8_t hmac[MAXSHASIZE];
      |           ^~~~
In file included from src/client/ns_turn_msg.h:38,
                 from src/client/ns_turn_msg.c:35:
src/client/ns_turn_msg.c: In function ‘convert_oauth_key_data’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ output may be truncated copying 129 bytes from a string of length 479 [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/client/ns_turn_msg.c:2119:5: note: in expansion of macro ‘STRCPY’
 2119 |     STRCPY(key->kid, oakd->kid);
      |     ^~~~~~
In file included from src/server/ns_turn_allocation.h:38,
                 from src/server/ns_turn_session.h:38,
                 from src/server/ns_turn_server.h:38,
                 from src/server/ns_turn_server.c:35:
src/server/ns_turn_server.c: In function ‘inc_quota’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 513 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/server/ns_turn_server.c:202:7: note: in expansion of macro ‘STRCPY’
  202 |       STRCPY(ss->username, username);
      |       ^~~~~~
src/server/ns_turn_server.c: In function ‘turn_session_info_copy_from’:
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 17 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/server/ns_turn_server.c:500:7: note: in expansion of macro ‘STRCPY’
  500 |       STRCPY(tsi->tls_method, get_ioa_socket_tls_method(ss->client_socket));
      |       ^~~~~~
src/ns_turn_defs.h:200:9: warning: ‘__builtin_strncpy’ specified bound 65 equals destination size [-Wstringop-truncation]
  200 |         strncpy((char *)(dst), (const char *)(src), szdst);                                                            \
      |         ^~~~~~~
src/server/ns_turn_server.c:501:7: note: in expansion of macro ‘STRCPY’
  501 |       STRCPY(tsi->tls_cipher, get_ioa_socket_tls_cipher(ss->client_socket));
      |       ^~~~~~
cd bin; ln -s turnserver turnadmin
==> Entering fakeroot environment...
==> Starting package()...
install -d /build/coturn/pkg/coturn/usr
install -d /build/coturn/pkg/coturn/usr/bin
install -d /build/coturn/pkg/coturn/var/db
install -d /build/coturn/pkg/coturn/usr/share/man/man1
install -d /build/coturn/pkg/coturn/usr/etc
install -d /build/coturn/pkg/coturn/usr/lib
install -d /build/coturn/pkg/coturn/usr/share/turnserver/examples
install -d /build/coturn/pkg/coturn/usr/share/doc/turnserver
install -d /build/coturn/pkg/coturn/usr/share/turnserver
install -d /build/coturn/pkg/coturn/usr/include/turn
install -p bin/turnserver /build/coturn/pkg/coturn/usr/bin
install -p bin/turnadmin /build/coturn/pkg/coturn/usr/bin
install -p bin/turnutils_uclient /build/coturn/pkg/coturn/usr/bin
install -p bin/turnutils_peer /build/coturn/pkg/coturn/usr/bin
install -p bin/turnutils_stunclient /build/coturn/pkg/coturn/usr/bin
install -p bin/turnutils_oauth /build/coturn/pkg/coturn/usr/bin
install -p bin/turnutils_natdiscovery /build/coturn/pkg/coturn/usr/bin
install -p -m 0644 man/man1/turnserver.1 /build/coturn/pkg/coturn/usr/share/man/man1/
install -p -m 0644 man/man1/turnadmin.1 /build/coturn/pkg/coturn/usr/share/man/man1/
install -p -m 0644 man/man1/turnutils.1 /build/coturn/pkg/coturn/usr/share/man/man1/
install -p -m 0644 man/man1/turnutils_uclient.1 /build/coturn/pkg/coturn/usr/share/man/man1/
install -p -m 0644 man/man1/turnutils_stunclient.1 /build/coturn/pkg/coturn/usr/share/man/man1/
install -p -m 0644 man/man1/turnutils_oauth.1 /build/coturn/pkg/coturn/usr/share/man/man1/
install -p -m 0644 man/man1/turnutils_natdiscovery.1 /build/coturn/pkg/coturn/usr/share/man/man1/
install -p -m 0644 man/man1/turnutils_peer.1 /build/coturn/pkg/coturn/usr/share/man/man1/
install -p -m 0644 man/man1/coturn.1 /build/coturn/pkg/coturn/usr/share/man/man1/
install -p lib/libturnclient.a /build/coturn/pkg/coturn/usr/lib
install -p -m 0644 LICENSE /build/coturn/pkg/coturn/usr/share/doc/turnserver
install -p -m 0644 README.turnserver /build/coturn/pkg/coturn/usr/share/doc/turnserver
install -p -m 0644 README.turnadmin /build/coturn/pkg/coturn/usr/share/doc/turnserver
install -p -m 0644 README.turnutils /build/coturn/pkg/coturn/usr/share/doc/turnserver
install -p -m 0644 INSTALL /build/coturn/pkg/coturn/usr/share/doc/turnserver
install -p -m 0644 postinstall.txt /build/coturn/pkg/coturn/usr/share/doc/turnserver
install -p -m 0644 turndb/schema.sql /build/coturn/pkg/coturn/usr/share/turnserver
install -p -m 0644 turndb/schema.mongo.sh /build/coturn/pkg/coturn/usr/share/turnserver
install -p -m 0644 turndb/testredisdbsetup.sh /build/coturn/pkg/coturn/usr/share/turnserver
install -p -m 0644 turndb/testmongosetup.sh /build/coturn/pkg/coturn/usr/share/turnserver
install -p -m 0644 turndb/testsqldbsetup.sql /build/coturn/pkg/coturn/usr/share/turnserver
install -p -m 0644 turndb/schema.userdb.redis /build/coturn/pkg/coturn/usr/share/turnserver
install -p -m 0644 turndb/schema.stats.redis /build/coturn/pkg/coturn/usr/share/turnserver
if [ -f sqlite/turndb ] ; then install -p -m 0644 sqlite/turndb /build/coturn/pkg/coturn/var/db/turndb; fi
install -p -m 0644 examples/etc/turnserver.conf /build/coturn/pkg/coturn/usr/etc/turnserver.conf.default
cp -rpf examples/etc /build/coturn/pkg/coturn/usr/share/turnserver/examples
cp -rpf examples/scripts /build/coturn/pkg/coturn/usr/share/turnserver/examples
rm -rf /build/coturn/pkg/coturn/usr/share/turnserver/examples/scripts/rfc5769.sh
cp -rpf include/turn/client /build/coturn/pkg/coturn/usr/include/turn
install -p -m 0644 include/turn/ns_turn_defs.h /build/coturn/pkg/coturn/usr/include/turn
cat /build/coturn/pkg/coturn/usr/share/doc/turnserver/postinstall.txt
See docs folder or go to https://github.com/coturn/coturn/docs/PostInstall.md==> Tidying install...
  -> Removing libtool files...
  -> Removing static library files...
  -> Purging unwanted files...
  -> Stripping unneeded symbols from binaries and libraries...
  -> Compressing man and info pages...
==> Checking for packaging issues...
==> Creating package "coturn"...
  -> Generating .PKGINFO file...
  -> Generating .BUILDINFO file...
  -> Generating .MTREE file...
  -> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: coturn 4.9.0-1 (Sat Feb 28 00:13:18 2026)
==> Cleaning up...
[?12l[?25h