Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libosmo-abis for openSUSE:Factory checked in at 2022-08-03 21:17:09 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libosmo-abis (Old) and /work/SRC/openSUSE:Factory/.libosmo-abis.new.1533 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libosmo-abis" Wed Aug 3 21:17:09 2022 rev:16 rq:992622 version:1.3.0 Changes: -------- --- /work/SRC/openSUSE:Factory/libosmo-abis/libosmo-abis.changes 2021-11-20 02:40:49.224447495 +0100 +++ /work/SRC/openSUSE:Factory/.libosmo-abis.new.1533/libosmo-abis.changes 2022-08-03 21:17:27.839562689 +0200 @@ -1,0 +2,6 @@ +Wed Aug 3 14:54:10 UTC 2022 - Jan Engelhardt <jeng...@inai.de> + +- Update to release 1.3.0 + * input/e1d: fix a memleak in handle_ts_raw_read() + +------------------------------------------------------------------- Old: ---- 1.2.0.tar.gz New: ---- 1.3.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libosmo-abis.spec ++++++ --- /var/tmp/diff_new_pack.9YFhtE/_old 2022-08-03 21:17:28.383564117 +0200 +++ /var/tmp/diff_new_pack.9YFhtE/_new 2022-08-03 21:17:28.387564128 +0200 @@ -1,7 +1,7 @@ # # spec file for package libosmo-abis # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: libosmo-abis -Version: 1.2.0 +Version: 1.3.0 Release: 0 Summary: Osmocom library for A-bis interface between BTS and BSC License: AGPL-3.0-or-later AND GPL-2.0-or-later @@ -31,10 +31,10 @@ BuildRequires: pkgconfig >= 0.20 BuildRequires: xz BuildRequires: pkgconfig(libosmo-e1d) >= 0.2.0 -BuildRequires: pkgconfig(libosmocodec) >= 1.5.0 -BuildRequires: pkgconfig(libosmocore) >= 1.5.0 -BuildRequires: pkgconfig(libosmogsm) >= 1.5.0 -BuildRequires: pkgconfig(libosmovty) >= 1.5.0 +BuildRequires: pkgconfig(libosmocodec) >= 1.7.0 +BuildRequires: pkgconfig(libosmocore) >= 1.7.0 +BuildRequires: pkgconfig(libosmogsm) >= 1.7.0 +BuildRequires: pkgconfig(libosmovty) >= 1.7.0 BuildRequires: pkgconfig(ortp) >= 0.22 BuildRequires: pkgconfig(talloc) @@ -128,7 +128,7 @@ %postun -n libosmotrau2 -p /sbin/ldconfig %files -n libosmoabis10 -%_libdir/libosmoabis.so.10* +%_libdir/libosmoabis.so.* %files -n libosmoabis-devel %license COPYING @@ -139,7 +139,7 @@ %_libdir/pkgconfig/libosmoabis.pc %files -n libosmotrau2 -%_libdir/libosmotrau.so.2* +%_libdir/libosmotrau.so.* %files -n libosmotrau-devel %license COPYING ++++++ 1.2.0.tar.gz -> 1.3.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/README.md new/libosmo-abis-1.3.0/README.md --- old/libosmo-abis-1.2.0/README.md 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/README.md 2022-06-28 17:59:38.000000000 +0200 @@ -29,9 +29,9 @@ You can clone from the official libosmo-abis.git repository using - git clone git://git.osmocom.org/libosmo-abis.git + git clone https://gitea.osmocom.org/osmocom/libosmo-abis -There is a cgit interface at <http://git.osmocom.org/libosmo-abis/> +There is a web interface at <https://gitea.osmocom.org/osmocom/libosmo-abis> Documentation ------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/configure.ac new/libosmo-abis-1.3.0/configure.ac --- old/libosmo-abis-1.2.0/configure.ac 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/configure.ac 2022-06-28 17:59:38.000000000 +0200 @@ -66,10 +66,10 @@ dnl Generate the output AM_CONFIG_HEADER(config.h) -PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 1.6.0) -PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 1.6.0) -PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 1.6.0) -PKG_CHECK_MODULES(LIBOSMOCODEC, libosmocodec >= 1.6.0) +PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 1.7.0) +PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 1.7.0) +PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 1.7.0) +PKG_CHECK_MODULES(LIBOSMOCODEC, libosmocodec >= 1.7.0) PKG_CHECK_MODULES(ORTP, ortp >= 0.22.0) AC_ARG_ENABLE([dahdi], diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/contrib/libosmo-abis.spec.in new/libosmo-abis-1.3.0/contrib/libosmo-abis.spec.in --- old/libosmo-abis-1.2.0/contrib/libosmo-abis.spec.in 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/contrib/libosmo-abis.spec.in 2022-06-28 17:59:38.000000000 +0200 @@ -27,10 +27,10 @@ BuildRequires: libtool >= 2 BuildRequires: pkgconfig >= 0.20 BuildRequires: xz -BuildRequires: pkgconfig(libosmocore) >= 1.6.0 -BuildRequires: pkgconfig(libosmogsm) >= 1.6.0 -BuildRequires: pkgconfig(libosmovty) >= 1.6.0 -BuildRequires: pkgconfig(libosmocodec) >= 1.6.0 +BuildRequires: pkgconfig(libosmocore) >= 1.7.0 +BuildRequires: pkgconfig(libosmogsm) >= 1.7.0 +BuildRequires: pkgconfig(libosmovty) >= 1.7.0 +BuildRequires: pkgconfig(libosmocodec) >= 1.7.0 BuildRequires: pkgconfig(ortp) >= 0.22.0 BuildRequires: pkgconfig(talloc) @@ -59,8 +59,8 @@ License: AGPL-3.0-or-later Group: Development/Libraries/C and C++ Requires: libosmoabis10 = %version -Requires: libosmocore-devel >= 1.6.0 -Requires: libosmogsm-devel >= 1.6.0 +Requires: libosmocore-devel >= 1.7.0 +Requires: libosmogsm-devel >= 1.7.0 %description -n libosmoabis-devel This library contains common/shared code regarding the GSM A-bis diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/debian/changelog new/libosmo-abis-1.3.0/debian/changelog --- old/libosmo-abis-1.2.0/debian/changelog 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/debian/changelog 2022-06-28 17:59:38.000000000 +0200 @@ -1,3 +1,33 @@ +libosmo-abis (1.3.0) unstable; urgency=medium + + [ Harald Welte ] + * lapd: don't add parenthesis around datalink name + * input/ipaccess: Don't start zero-ms timer on every write + * update git URLs (git -> https; gitea) + * update git URLs (git -> https; gitea) + * osmo_pcap_lapd_write: Fix write of uninitialized byte(s) + + [ Oliver Smith ] + * treewide: remove FSF address + + [ Philipp Maier ] + * ipaccess.c: register RSL/OML related osmo_fds for monitoring + + [ Michael Iedema ] + * stats: add RSL line number to TCP stats name + * stats: add BTS index to IPA RSL TCP stats name + * stats: add site_id scope to ipa-rsl tcp stat names + + [ Vadim Yanitskiy ] + * input/e1d: fix a memleak in handle_ts_raw_read() + * input/e1d: use msgb_hexdump_l2() in handle_ts_raw_read() + + [ Pau Espin Pedrol ] + * input/ipaccess: Remove unneeded osmo_fd_write_enable() + * input/ipaccess: Avoid extra poll() call when e1i_ts tx queue becomes empty + + -- Pau Espin Pedrol <pes...@sysmocom.de> Tue, 28 Jun 2022 17:59:38 +0200 + libosmo-abis (1.2.0) unstable; urgency=medium [ Keith ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/debian/control new/libosmo-abis-1.3.0/debian/control --- old/libosmo-abis-1.2.0/debian/control 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/debian/control 2022-06-28 17:59:38.000000000 +0200 @@ -11,12 +11,12 @@ dh-autoreconf, libdpkg-perl, git, - libosmocore-dev (>= 1.6.0), + libosmocore-dev (>= 1.7.0), pkg-config, libortp-dev Standards-Version: 3.9.7 -Vcs-Git: git://git.osmocom.org/libosmo-abis.git -Vcs-Browser: http://git.osmocom.org/libosmo-abis/ +Vcs-Git: https://gitea.osmocom.org/osmocom/libosmo-abis +Vcs-Browser: https://gitea.osmocom.org/osmocom/libosmo-abis Homepage: https://projects.osmocom.org/projects/libosmo-abis Package: libosmo-abis diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/debian/copyright new/libosmo-abis-1.3.0/debian/copyright --- old/libosmo-abis-1.2.0/debian/copyright 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/debian/copyright 2022-06-28 17:59:38.000000000 +0200 @@ -1,6 +1,6 @@ Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: libosmo-abis -Source: git://git.osmocom.org/libosmo-abis.git +Source: https://gitea.osmocom.org/osmocom/libosmo-abis Files: * Copyright: 2008 Daniel Willmann <dan...@totalueberwachung.de> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/src/Makefile.am new/libosmo-abis-1.3.0/src/Makefile.am --- old/libosmo-abis-1.2.0/src/Makefile.am 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/src/Makefile.am 2022-06-28 17:59:38.000000000 +0200 @@ -1,7 +1,7 @@ # This is _NOT_ the library release version, it's an API version. # Please read chapter "Library interface versions" of the libtool documentation # before making any modifications: https://www.gnu.org/software/libtool/manual/html_node/Versioning.html -ABIS_LIBVERSION=11:0:1 +ABIS_LIBVERSION=11:1:1 TRAU_LIBVERSION=7:0:5 AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include -I$(top_builddir) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/src/input/dahdi.c new/libosmo-abis-1.3.0/src/input/dahdi.c --- old/libosmo-abis-1.2.0/src/input/dahdi.c 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/src/input/dahdi.c 2022-06-28 17:59:38.000000000 +0200 @@ -18,10 +18,6 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * */ #include "config.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/src/input/e1d.c new/libosmo-abis-1.3.0/src/input/e1d.c --- old/libosmo-abis-1.2.0/src/input/e1d.c 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/src/input/e1d.c 2022-06-28 17:59:38.000000000 +0200 @@ -16,10 +16,6 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * */ #include "config.h" @@ -236,6 +232,7 @@ ret = read(bfd->fd, msg->data, D_TSX_ALLOC_SIZE); if (ret < 0 || ret != D_TSX_ALLOC_SIZE) { LOGPITS(e1i_ts, DLINP, LOGL_DEBUG, "read error %d %s\n", ret, strerror(errno)); + msgb_free(msg); return ret; } @@ -245,7 +242,7 @@ msgb_put(msg, ret); msg->l2h = msg->data; - LOGPITS(e1i_ts, DLMIB, LOGL_DEBUG, "RAW CHAN RX: %s\n", osmo_hexdump(msgb_l2(msg), ret)); + LOGPITS(e1i_ts, DLMIB, LOGL_DEBUG, "RAW CHAN RX: %s\n", msgb_hexdump_l2(msg)); ret = e1inp_rx_ts(e1i_ts, msg, 0, 0); /* physical layer indicates that data has been sent, * we thus can send some more data */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/src/input/ipa_keepalive.c new/libosmo-abis-1.3.0/src/input/ipa_keepalive.c --- old/libosmo-abis-1.2.0/src/input/ipa_keepalive.c 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/src/input/ipa_keepalive.c 2022-06-28 17:59:38.000000000 +0200 @@ -16,10 +16,6 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * */ #include <osmocom/core/fsm.h> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/src/input/ipaccess.c new/libosmo-abis-1.3.0/src/input/ipaccess.c --- old/libosmo-abis-1.2.0/src/input/ipaccess.c 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/src/input/ipaccess.c 2022-06-28 17:59:38.000000000 +0200 @@ -50,6 +50,7 @@ #include <osmocom/abis/ipa.h> #include <osmocom/core/backtrace.h> #include <osmocom/gsm/ipa.h> +#include <osmocom/core/stats_tcp.h> /* global parameters of IPA input driver */ struct ipa_pars g_e1inp_ipaccess_pars; @@ -295,6 +296,7 @@ struct e1inp_ts *ts; struct osmo_fd *newbfd; struct e1inp_line *new_line; + char tcp_stat_name[64]; sign_link = line->ops->sign_link_up(&unit_data, line, @@ -341,6 +343,9 @@ "could not register FD\n"); goto err; } + snprintf(tcp_stat_name, sizeof(tcp_stat_name), "site.%u.bts.%u.ipa-rsl.%u", + unit_data.site_id, unit_data.bts_id, unit_data.trx_id); + osmo_stats_tcp_osmo_fd_register(newbfd, tcp_stat_name); e1i_ts = ipaccess_line_ts(newbfd, new_line); ipaccess_bsc_keepalive_fsm_alloc(e1i_ts, newbfd, "rsl_bsc_to_bts"); @@ -472,12 +477,24 @@ } } +static bool e1i_ts_has_pending_tx_msgs(struct e1inp_ts *e1i_ts) +{ + struct e1inp_sign_link *link; + llist_for_each_entry(link, &e1i_ts->sign.sign_links, list) { + if (!llist_empty(&link->tx_list)) { + return true; + } + } + return false; +} + static void timeout_ts1_write(void *data) { struct e1inp_ts *e1i_ts = (struct e1inp_ts *)data; /* trigger write of ts1, due to tx delay timer */ - ts_want_write(e1i_ts); + if (e1i_ts_has_pending_tx_msgs(e1i_ts)) + ts_want_write(e1i_ts); } static int __handle_ts1_write(struct osmo_fd *bfd, struct e1inp_line *line) @@ -489,12 +506,12 @@ int ret; e1i_ts = ipaccess_line_ts(bfd, line); - osmo_fd_write_disable(bfd); /* get the next msg for this timeslot */ msg = e1inp_tx_ts(e1i_ts, &sign_link); if (!msg) { /* no message after tx delay timer */ + osmo_fd_write_disable(bfd); return 0; } @@ -504,7 +521,7 @@ case E1INP_SIGN_OSMO: break; default: - osmo_fd_write_enable(bfd); /* come back for more msg */ + /* leave WRITE flag enabled, come back for more msg */ ret = -EINVAL; goto out; } @@ -522,13 +539,19 @@ goto err; } - /* set tx delay timer for next event */ - osmo_timer_setup(&e1i_ts->sign.tx_timer, timeout_ts1_write, e1i_ts); - - /* Reducing this might break the nanoBTS 900 init. */ - osmo_timer_schedule(&e1i_ts->sign.tx_timer, 0, e1i_ts->sign.delay); - + /* this is some ancient code that apparently exists to slow down writes towards + * some even more ancient nanoBTS 900 units. See git commit + * d49fc5ae24fc9d44d2b284392ab619cc7a69a876 of openbsc.git (now osmo-bsc.git) */ + if (e1i_ts->sign.delay) { + osmo_fd_write_disable(bfd); + /* set tx delay timer for next event */ + osmo_timer_setup(&e1i_ts->sign.tx_timer, timeout_ts1_write, e1i_ts); + osmo_timer_schedule(&e1i_ts->sign.tx_timer, 0, e1i_ts->sign.delay); + } else { out: + if (!e1i_ts_has_pending_tx_msgs(e1i_ts)) + osmo_fd_write_disable(bfd); + } msgb_free(msg); return ret; err: @@ -671,6 +694,7 @@ LOGP(DLINP, LOGL_ERROR, "could not register FD\n"); goto err_line; } + osmo_stats_tcp_osmo_fd_register(bfd, "ipa-oml"); update_fd_settings(line, bfd->fd); @@ -724,6 +748,8 @@ LOGP(DLINP, LOGL_ERROR, "could not register FD\n"); goto err_line; } + osmo_stats_tcp_osmo_fd_register(bfd, "ipa-rsl"); + /* Request ID. FIXME: request LOCATION, HW/SW VErsion, Unit Name, Serno */ ret = ipa_ccm_send_id_req(bfd->fd); if (ret < 0) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/src/input/lapd.c new/libosmo-abis-1.3.0/src/input/lapd.c --- old/libosmo-abis-1.2.0/src/input/lapd.c 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/src/input/lapd.c 2022-06-28 17:59:38.000000000 +0200 @@ -20,10 +20,6 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * */ #include "internal.h" @@ -74,13 +70,13 @@ #define LAPD_SET_K(n, o) {n,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o} #define LOGLI(li, level, fmt, args ...) \ - LOGP(DLLAPD, level, "%s: " fmt, (li)->name, ## args) + LOGP(DLLAPD, level, "(%s): " fmt, (li)->name, ## args) #define LOGTEI(teip, level, fmt, args ...) \ LOGP(DLLAPD, level, "(%s-T%u): " fmt, (teip)->li->name, (teip)->tei, ## args) #define LOGSAP(sap, level, fmt, args ...) \ - LOGP(DLLAPD, level, "%s: " fmt, (sap)->dl.name, ## args) + LOGP(DLLAPD, level, "(%s): " fmt, (sap)->dl.name, ## args) #define DLSAP_MSGB_SIZE 128 #define DLSAP_MSGB_HEADROOM 56 @@ -240,14 +236,14 @@ char name[256]; int k; - snprintf(name, sizeof(name), "(%s-T%u-S%u)", li->name, teip->tei, sapi); + snprintf(name, sizeof(name), "%s-T%u-S%u", li->name, teip->tei, sapi); sap = talloc_zero(teip, struct lapd_sap); if (!sap) return NULL; LOGP(DLLAPD, LOGL_NOTICE, - "%s: LAPD Allocating SAP for SAPI=%u / TEI=%u (dl=%p, sap=%p)\n", + "(%s): LAPD Allocating SAP for SAPI=%u / TEI=%u (dl=%p, sap=%p)\n", name, sapi, teip->tei, &sap->dl, sap); sap->sapi = sapi; @@ -256,7 +252,7 @@ profile = &li->profile; k = profile->k[sapi & 0x3f]; - LOGP(DLLAPD, LOGL_NOTICE, "%s: k=%d N200=%d N201=%d T200=%d.%d T203=%d.%d\n", + LOGP(DLLAPD, LOGL_NOTICE, "(%s): k=%d N200=%d N201=%d T200=%d.%d T203=%d.%d\n", name, k, profile->n200, profile->n201, profile->t200_sec, profile->t200_usec, profile->t203_sec, profile->t203_usec); lapd_dl_init2(dl, k, 128, profile->n201, name); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/src/input/lapd_pcap.c new/libosmo-abis-1.3.0/src/input/lapd_pcap.c --- old/libosmo-abis-1.2.0/src/input/lapd_pcap.c 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/src/input/lapd_pcap.c 2022-06-28 17:59:38.000000000 +0200 @@ -127,50 +127,45 @@ /* This currently only works for the D-Channel */ int osmo_pcap_lapd_write(int fd, int direction, struct msgb *msg) { - int numbytes = 0; struct timeval tv; - struct pcap_rechdr pcap_rechdr; - struct pcap_lapdhdr header; - char buf[sizeof(struct pcap_rechdr) + - sizeof(struct pcap_lapdhdr) + msg->len]; + struct { + struct pcap_rechdr pcap_rechdr; + struct pcap_lapdhdr header; + char buf[msg->len]; + } __attribute__((packed)) s; /* PCAP file has not been opened, skip. */ if (fd < 0) return 0; - pcap_rechdr.ts_sec = 0; - pcap_rechdr.ts_usec = 0; - pcap_rechdr.incl_len = msg->len + sizeof(struct pcap_lapdhdr); - pcap_rechdr.orig_len = msg->len + sizeof(struct pcap_lapdhdr); + memset(&s, 0, sizeof(s)); + + s.pcap_rechdr.ts_sec = 0; + s.pcap_rechdr.ts_usec = 0; + s.pcap_rechdr.incl_len = msg->len + sizeof(struct pcap_lapdhdr); + s.pcap_rechdr.orig_len = msg->len + sizeof(struct pcap_lapdhdr); if (direction == OSMO_LAPD_PCAP_OUTPUT) - header.pkttype = htons(LINUX_SLL_OUTGOING); + s.header.pkttype = htons(LINUX_SLL_OUTGOING); else - header.pkttype = htons(LINUX_SLL_HOST); - header.hatype = 0; - header.halen = 0; - header.addr[0] = 0x01; /* we are the network side */ - header.protocol = ntohs(48); + s.header.pkttype = htons(LINUX_SLL_HOST); + s.header.hatype = 0; + s.header.halen = 0; + s.header.addr[0] = 0x01; /* we are the network side */ + s.header.protocol = ntohs(48); gettimeofday(&tv, NULL); - pcap_rechdr.ts_sec = tv.tv_sec; - pcap_rechdr.ts_usec = tv.tv_usec; - - memcpy(buf + numbytes, &pcap_rechdr, sizeof(pcap_rechdr)); - numbytes += sizeof(pcap_rechdr); - - memcpy(buf + numbytes, &header, sizeof(header)); - numbytes += sizeof(header); + s.pcap_rechdr.ts_sec = tv.tv_sec; + s.pcap_rechdr.ts_usec = tv.tv_usec; - memcpy(buf + numbytes, msg->data, msg->len); - numbytes += msg->len; + memcpy(s.buf, msg->data, msg->len); - if (write(fd, buf, numbytes) != numbytes) { + if (write(fd, &s, sizeof(s)) != sizeof(s)) { LOGP(DLLAPD, LOGL_ERROR, "cannot write packet to PCAP: %s\n", strerror(errno)); return -1; } - return numbytes; + return sizeof(s); } int osmo_pcap_lapd_close(int fd) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/src/input/unixsocket.c new/libosmo-abis-1.3.0/src/input/unixsocket.c --- old/libosmo-abis-1.2.0/src/input/unixsocket.c 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/src/input/unixsocket.c 2022-06-28 17:59:38.000000000 +0200 @@ -18,10 +18,6 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * */ #include <errno.h> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libosmo-abis-1.2.0/src/trau/osmo_ortp.c new/libosmo-abis-1.3.0/src/trau/osmo_ortp.c --- old/libosmo-abis-1.2.0/src/trau/osmo_ortp.c 2021-11-16 14:18:45.000000000 +0100 +++ new/libosmo-abis-1.3.0/src/trau/osmo_ortp.c 2022-06-28 17:59:38.000000000 +0200 @@ -14,10 +14,6 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * */ /*! \file osmo_ortp.c ++++++ osmo-talloc.diff ++++++ --- /var/tmp/diff_new_pack.9YFhtE/_old 2022-08-03 21:17:28.503564432 +0200 +++ /var/tmp/diff_new_pack.9YFhtE/_new 2022-08-03 21:17:28.507564442 +0200 @@ -9,23 +9,23 @@ src/Makefile.am | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -Index: libosmo-abis-1.1.1/configure.ac +Index: libosmo-abis-1.3.0/configure.ac =================================================================== ---- libosmo-abis-1.1.1.orig/configure.ac -+++ libosmo-abis-1.1.1/configure.ac +--- libosmo-abis-1.3.0.orig/configure.ac ++++ libosmo-abis-1.3.0/configure.ac @@ -71,6 +71,7 @@ PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty - PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 1.6.0) - PKG_CHECK_MODULES(LIBOSMOCODEC, libosmocodec >= 1.6.0) + PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 1.7.0) + PKG_CHECK_MODULES(LIBOSMOCODEC, libosmocodec >= 1.7.0) PKG_CHECK_MODULES(ORTP, ortp >= 0.22.0) +PKG_CHECK_MODULES([TALLOC], [talloc]) AC_ARG_ENABLE([dahdi], AC_HELP_STRING([--disable-dahdi], -Index: libosmo-abis-1.1.1/src/Makefile.am +Index: libosmo-abis-1.3.0/src/Makefile.am =================================================================== ---- libosmo-abis-1.1.1.orig/src/Makefile.am -+++ libosmo-abis-1.1.1/src/Makefile.am -@@ -7,7 +7,7 @@ TRAU_LIBVERSION=6:0:4 +--- libosmo-abis-1.3.0.orig/src/Makefile.am ++++ libosmo-abis-1.3.0/src/Makefile.am +@@ -7,7 +7,7 @@ TRAU_LIBVERSION=7:0:5 AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include -I$(top_builddir) AM_CFLAGS= -Wall $(LIBOSMOCORE_CFLAGS) $(LIBOSMOGSM_CFLAGS) $(LIBOSMOVTY_CFLAGS) $(LIBOSMOE1D_CFLAGS) $(LIBOSMOCODEC_CFLAGS) $(COVERAGE_CFLAGS) AM_LDFLAGS = $(COVERAGE_LDFLAGS)