debian目录

This commit is contained in:
2025-10-17 04:19:21 +08:00
parent 52f487c3d6
commit f0afd2c417
35 changed files with 1733 additions and 0 deletions

2
debian/Jenkinsfile vendored Normal file
View File

@@ -0,0 +1,2 @@
@Library('ubports-build-tools') _
buildAndProvideDebianPackage()

283
debian/changelog vendored Normal file
View File

@@ -0,0 +1,283 @@
ofono (1.33-2ubports4) focal; urgency=medium
* Fix script permissions only if architecture-independent packages are built
-- Guido Berhoerster <guido+gitlab.com@berhoerster.name> Wed, 01 Dec 2021 11:27:35 +0100
ofono (1.33-2ubports3) focal; urgency=medium
* Update to dh version 12
* Update dependencies
* Clean up obsolete files and make the packaging data consistent with
ofono-sailfish and ofono-ubports
* Replace dh_installinit with dh_installsystemd
-- Guido Berhoerster <guido+gitlab.com@berhoerster.name> Fri, 26 Nov 2021 16:22:38 +0100
ofono (1.33-2ubports2) focal; urgency=medium
* Add conflicts with other ofono variants
-- Guido Berhoerster <guido+gitlab.com@berhoerster.name> Fri, 08 Oct 2021 16:04:22 +0200
ofono (1.33-2ubports1) focal; urgency=medium
* New upstream version 1.33
* Add missing dependency on libell
-- Guido Berhoerster <guido+gitlab.com@berhoerster.name> Fri, 08 Oct 2021 13:00:34 +0200
ofono (1.31-2ubports2) focal; urgency=medium
* Convert to non-native package
* Use system libell
-- Guido Berhoerster <guido+gitlab.com@berhoerster.name> Fri, 08 Oct 2021 10:40:55 +0200
ofono (1.31-2ubports1) xenial; urgency=medium
* Import to ubports
-- Marius Gripsgard <marius@ubports.com> Wed, 25 Mar 2020 02:04:30 +0100
ofono (1.31-2) unstable; urgency=medium
* Team upload
* debian/copyright: Update the copyright file and convert to dep5
-- Laurent Bigonville <bigon@debian.org> Thu, 02 Jan 2020 01:43:46 +0100
ofono (1.31-1) unstable; urgency=medium
* Team upload
[ Helmut Grohne ]
* Drop libc*-dev from ofono-dev Depends.
* Move ofono.pc to /usr/share/pkgconfig.
* Mark ofono-dev Multi-Arch: foreign. (Closes: #893941)
[ Laurent Bigonville ]
* New upstream release
* debian/control: Bump Standards-Version to 4.4.1 (no further changes)
* Bump debhelper compatibility to 12, use dh_missing instead of dh_install
to list non-installed files
* d/p/0002-Remove-After-syslog.target-from-systemd-.service-fil.patch:
Remove After=syslog.target from systemd .service files, to please lintian
* debian/control: Make ofono architecture linux-any, it uses signalfd that
is linux only and would require porting
* debian/control: Make ofono-dev depend against libdbus-1-dev and
libglib2.0-dev, the pkg-config file Requires them
* Create a new ofono-scripts package that ships the tests/ directory
(Closes: #868377)
-- Laurent Bigonville <bigon@debian.org> Sun, 29 Dec 2019 13:21:45 +0100
ofono (1.28-1) unstable; urgency=medium
* New upstream version 1.28
-- Héctor Orón Martínez <zumbi@debian.org> Fri, 08 Feb 2019 22:58:25 +0100
ofono (1.21-1) unstable; urgency=medium
* Team upload
[ Jonny Lamb ]
* Remove myself from Uploaders.
[ Laurent Bigonville ]
* New upstream release.
* debian/control: Bump Standards-Version to 4.4.1 (no further changes)
* Bump debhelper compatibility to 10 and drop direct build-dependency
against dh-systemd and autotools-dev
* debian/control: Add explicit dependency against lsb-base as the initscript
uses /lib/lsb/init-functions
* debian/watch: Use https and verify the signature of the tarball
* debian/rules: Do not run the tests in parallel
* debian/copyright: Fix the licence, ofono is GPL, not LGPL (Closes: #853206)
-- Laurent Bigonville <bigon@debian.org> Fri, 10 Nov 2017 17:32:26 +0100
ofono (1.18-1) unstable; urgency=medium
* Team upload
* New upstream release. (Closes: #792632)
- Bump libglib2.0-dev to >= 2.32
- Fix installation of the udev rules file
* debian/control:
- Bump Standards-Version to 3.9.8 (no further changes)
- Switch to https URL for Vcs-* fields
* Drop ofono-dbg package, rely on automatically built dbgsym package
* debian/compat: Bump Debhelper compatibility to 9
* Drop useless files in debian/patches/
* Switch from cdbs to dh
* debian/*.init: Use the executable path to better identify the running
processes (Closes: #825134)
-- Laurent Bigonville <bigon@debian.org> Sat, 04 Jun 2016 21:55:47 +0200
ofono (1.15-3) unstable; urgency=medium
* Team upload
* debian/control: Use canonical URL for the Vcs-* fields
* Install missing dundee daemon and LSB initscript
* debian/ofono.install, debian/rules, debian/control: Install .service files
(Closes: #771088)
* debian/control: Add build-dependency to autotools-dev
* debian/ofono.init: Drop the "set -e" from the begining of the script
-- Laurent Bigonville <bigon@debian.org> Wed, 13 May 2015 15:03:20 +0200
ofono (1.15-2) unstable; urgency=medium
* d/control: Konstantinos Margaritis drop from uploaders. Thanks.
* d/ofono-dev.install: ship pkg-config files.
Thanks Graham Inggs for patch.
(Closes: #763111)
* d/control: bump Standards-Version.
* d/p/0002_update_config_guess.patch: update to recent version 2014-03-23.
-- Hector Oron <zumbi@debian.org> Mon, 20 Oct 2014 00:08:53 +0200
ofono (1.15-1) unstable; urgency=medium
* New upstream release. (Closes: #759516)
-- Hector Oron <zumbi@debian.org> Wed, 24 Sep 2014 01:20:27 +0200
ofono (1.9-2) unstable; urgency=low
* Upload to unstable.
* d/p/fix-ftbfs-glibc-2.17.patch: ftbfs with eglibc-2.17 (Closes: #701435)
-- Hector Oron <zumbi@debian.org> Tue, 04 Jun 2013 15:47:00 +0200
ofono (1.9-1) experimental; urgency=low
* New upstream release
-- Konstantinos Margaritis <markos@debian.org> Tue, 31 Jul 2012 11:00:42 +0300
ofono (1.6-2) unstable; urgency=low
* Add build dependency on mobile-broadband-provider-info
-- Hector Oron <zumbi@debian.org> Sat, 02 Jun 2012 00:55:18 +0200
ofono (1.6-1) unstable; urgency=low
* New upstream release.
* Add myself to uploaders.
* Update Standards-Version.
* Change source/format to 3.0 (quilt)
-- Hector Oron <zumbi@debian.org> Fri, 01 Jun 2012 18:29:37 +0200
ofono (0.53-2) unstable; urgency=low
* debian/ofono.init: Add dbus as a dependency to start and stop. Thanks
to Johannes Schauer for the patch and report. (Closes: #631707)
-- Jonny Lamb <jonny@debian.org> Wed, 24 Aug 2011 15:36:44 +0100
ofono (0.53-1) unstable; urgency=low
* New upstream release.
* debian/control: Add Vcs-* fields.
* Ensure ofono is built with bluetooth support (pass --enable-bluetooth
and add libbluetooth-dev build-dep).
-- Jonny Lamb <jonny@debian.org> Wed, 24 Aug 2011 14:40:25 +0100
ofono (0.36-1) unstable; urgency=low
* New upstream release.
* debian/: Added some files relating to building with git.
* debian/control:
+ Adopt the package from Andres. Thanks for your work, dude!
+ Upped versioned build-dep on glib.
+ Upped Standards-Version. (no changes)
* debinan/ofono.install: Updated.
* debian/rules: Switch to cdbs to be like the rest of the pkg-telepathy
packages.
* debian/ofono.init: Add dependency on $remote_fs in required-start and
required-stop.
* debian/compat: Lower to 5 for misc reasons.
* debian/patches/: Add patch to fix small lintian problem.
-- Jonny Lamb <jonny@debian.org> Mon, 29 Nov 2010 18:14:48 +0000
ofono (0.18-1) unstable; urgency=low
* New upstream release.
-- Andres Salomon <dilinger@debian.org> Thu, 18 Feb 2010 03:58:18 +0000
ofono (0.9-1) unstable; urgency=low
* New upstream release.
* Since it runs w/out it, change the udev Depends to a Recommends.
-- Andres Salomon <dilinger@debian.org> Mon, 02 Nov 2009 18:46:37 +0000
ofono (0.8-1) unstable; urgency=low
* New upstream release.
* Drop cdbs and use debhelper 7 features instead.
-- Andres Salomon <dilinger@debian.org> Sun, 18 Oct 2009 23:54:52 +0000
ofono (0.7-1) unstable; urgency=low
* New upstream release.
* Also build-dep upon udev, as otherwise UDEV_DATADIR is set incorrectly
(closes: #549544).
* Ofono itself should also probably depend upon udev, eh?
-- Andres Salomon <dilinger@debian.org> Sun, 04 Oct 2009 15:27:21 +0000
ofono (0.6-3) unstable; urgency=low
* Build-dep upon libudev-dev and enable udev support.
-- Andres Salomon <dilinger@debian.org> Sat, 03 Oct 2009 20:22:58 +0000
ofono (0.6-2) unstable; urgency=low
* Add a -dbg package.
-- Andres Salomon <dilinger@debian.org> Tue, 29 Sep 2009 20:05:20 +0000
ofono (0.6-1) unstable; urgency=low
* New upstream release.
-- Andres Salomon <dilinger@debian.org> Mon, 28 Sep 2009 16:21:52 +0000
ofono (0.5-1) unstable; urgency=low
* New upstream release.
* Be sure to create /var/lib/ofono (for the lulz).
* Silence some lintian warnings.
-- Andres Salomon <dilinger@debian.org> Fri, 25 Sep 2009 22:58:23 +0000
ofono (0.4-1) unstable; urgency=low
* New upstream release.
* Update copyright file.
* Include the new modem.conf.
-- Andres Salomon <dilinger@debian.org> Thu, 03 Sep 2009 19:51:21 +0000
ofono (0.3-1) unstable; urgency=low
* New upstream release.
* Drop ofonod manpage; merged upstream.
-- Andres Salomon <dilinger@debian.org> Sat, 15 Aug 2009 15:55:11 +0000
ofono (0.1-1) unstable; urgency=low
* Initial release.
-- Andres Salomon <dilinger@debian.org> Sat, 11 Jul 2009 18:37:48 -0400

78
debian/control vendored Normal file
View File

@@ -0,0 +1,78 @@
Source: ofono
Section: comm
Priority: optional
Maintainer: UBports developers <devs@ubports.com>
Build-Depends: debhelper-compat (= 12),
libbluetooth-dev (>= 4.30),
libdbus-1-dev,
libell-dev,
libglib2.0-dev (>= 2.60),
libtool,
libudev-dev,
mobile-broadband-provider-info,
udev,
Standards-Version: 4.4.1
Homepage: https://git.kernel.org/pub/scm/network/ofono/ofono.git/
Vcs-Git: https://git.kernel.org/pub/scm/network/ofono/ofono.git
Vcs-Browser: https://git.kernel.org/pub/scm/network/ofono/ofono.git/
Package: ofono
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, dbus
Pre-Depends: ${misc:Pre-Depends}
Recommends: udev
Conflicts: ofono-ubports, ofono-sailfish
Description: Mobile telephony stack (daemon)
oFono is a stack for mobile telephony devices on Linux and this package
contains the version maintained on kernel.org. oFono supports speaking to
telephony devices through specific drivers, or with generic AT commands.
.
oFono also includes a low-level plug-in API for integrating with other
telephony stacks, cellular modems and storage back-ends. The plug-in API
functionality is modeled on public standards, in particular
3GPP TS 27.007 "AT command set for User Equipment (UE)."
.
This package includes the core daemon.
Package: ofono-dev
Section: libdevel
Architecture: any
Depends: ${shlibs:Depends},
${misc:Depends},
libdbus-1-dev,
libglib2.0-dev,
libc6-dev | libc-dev
Conflicts: ofono-ubports-dev (<< 1.18.0+ubports7~),
ofono-sailfish-dev (<< 1.29+git7-0ubports2~),
Description: Mobile telephony stack (development files)
oFono is a stack for mobile telephony devices on Linux and this package
contains the version maintained on kernel.org. oFono supports speaking to
telephony devices through specific drivers, or with generic AT commands.
.
oFono also includes a low-level plug-in API for integrating with other
telephony stacks, cellular modems and storage back-ends. The plug-in API
functionality is modeled on public standards, in particular
3GPP TS 27.007 "AT command set for User Equipment (UE)."
.
This package includes the header files for building oFono plugins.
Package: ofono-scripts
Architecture: all
Depends: ${shlibs:Depends},
${misc:Depends},
ofono (>= ${source:Version}),
python3,
python3-dbus,
python3-gi
Conflicts: ofono-ubports-scripts, ofono-sailfish-scripts
Description: Mobile telephony stack (test and maintenance script files)
oFono is a stack for mobile telephony devices on Linux and this package
contains the version maintained on kernel.org. oFono supports speaking to
telephony devices through specific drivers, or with generic AT commands.
.
oFono also includes a low-level plug-in API for integrating with other
telephony stacks, cellular modems and storage back-ends. The plug-in API
functionality is modeled on public standards, in particular
3GPP TS 27.007 "AT command set for User Equipment (UE)."
.
This package includes test and maintenance scripts.

528
debian/copyright vendored Normal file
View File

@@ -0,0 +1,528 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: oFono
Upstream-Contact: oFono Mailing-list <ofono@ofono.org>
Source: https://git.kernel.org/pub/scm/network/ofono/ofono.git
Files: *
Copyright: 2008-2017, Intel Corporation.
License: GPL-2.0
Files: ./drivers/cdmamodem/cdmamodem.c
./drivers/cdmamodem/cdmamodem.h
./drivers/cdmamodem/connman.c
./drivers/cdmamodem/voicecall.c
./drivers/isimodem/audio-settings.c
./drivers/isimodem/call-barring.c
./drivers/isimodem/call-forwarding.c
./drivers/isimodem/call-meter.c
./drivers/isimodem/call-settings.c
./drivers/isimodem/call.h
./drivers/isimodem/cbs.c
./drivers/isimodem/debug.c
./drivers/isimodem/debug.h
./drivers/isimodem/devinfo.c
./drivers/isimodem/gpds.h
./drivers/isimodem/gprs-context.c
./drivers/isimodem/gprs.c
./drivers/isimodem/gss.h
./drivers/isimodem/info.h
./drivers/isimodem/infoserver.c
./drivers/isimodem/infoserver.h
./drivers/isimodem/isimodem.c
./drivers/isimodem/isimodem.h
./drivers/isimodem/isiutil.h
./drivers/isimodem/mtc.h
./drivers/isimodem/network-registration.c
./drivers/isimodem/network.h
./drivers/isimodem/phonebook.c
./drivers/isimodem/radio-settings.c
./drivers/isimodem/sim.c
./drivers/isimodem/sim.h
./drivers/isimodem/sms.h
./drivers/isimodem/ss.h
./drivers/isimodem/ussd.c
./drivers/isimodem/voicecall.c
./examples/nettime.c
./examples/private-network.c
./examples/provision.c
./gisi/client.c
./gisi/client.h
./gisi/common.h
./gisi/iter.c
./gisi/iter.h
./gisi/message.c
./gisi/message.h
./gisi/modem.c
./gisi/modem.h
./gisi/netlink.c
./gisi/netlink.h
./gisi/pep.c
./gisi/pep.h
./gisi/phonet.h
./gisi/pipe.c
./gisi/pipe.h
./gisi/server.c
./gisi/server.h
./gisi/socket.c
./gisi/socket.h
./include/cdma-connman.h
./include/cdma-sms.h
./include/cdma-voicecall.h
./include/gprs-provision.h
./include/nettime.h
./include/radio-settings.h
./plugins/isiusb.c
./plugins/n900.c
./plugins/nokia-gpio.c
./plugins/nokia-gpio.h
./src/cdma-connman.c
./src/cdma-sms.c
./src/cdma-smsutil.c
./src/cdma-smsutil.h
./src/cdma-voicecall.c
./src/gprs-provision.c
./src/nettime.c
./src/radio-settings.c
./src/smsagent.c
./src/smsagent.h
Copyright: 2008-2011, Nokia Corporation and/or its subsidiary(-ies).
License: GPL-2.0
Files: ./ell/checksum.c
./ell/checksum.h
./ell/file.c
./ell/file.h
./ell/idle.c
./ell/idle.h
./ell/io.c
./ell/io.h
./ell/log.c
./ell/log.h
./ell/main.c
./ell/main.h
./ell/missing.h
./ell/private.h
./ell/queue.c
./ell/queue.h
./ell/random.c
./ell/random.h
./ell/signal.c
./ell/signal.h
./ell/string.c
./ell/string.h
./ell/strv.c
./ell/strv.h
./ell/test.c
./ell/test.h
./ell/timeout.c
./ell/timeout.h
./ell/uintset.c
./ell/uintset.h
./ell/utf8.c
./ell/utf8.h
./ell/util.c
./ell/util.h
./ell/uuid.c
./ell/uuid.h
Copyright: 2011-2019, Intel Corporation.
License: LGPL-2.1+
Files: ./drivers/infineonmodem/infineon_constants.h
./drivers/rilmodem/vendor.h
./drivers/rilmodem/voicecall.h
./gril/ril_constants.h
./plugins/infineon.c
./plugins/ril.h
./plugins/upower.c
./unit/rilmodem-test-engine.c
./unit/rilmodem-test-engine.h
./unit/rilmodem-test-server.c
./unit/rilmodem-test-server.h
./unit/test-rilmodem-cb.c
./unit/test-rilmodem-cs.c
./unit/test-rilmodem-gprs.c
./unit/test-rilmodem-sms.c
Copyright: 2013-2016, Canonical Ltd.
License: GPL-2.0
Files: ./drivers/rilmodem/call-volume.c
./drivers/rilmodem/devinfo.c
./drivers/rilmodem/gprs-context.c
./drivers/rilmodem/rilmodem.h
./drivers/rilmodem/rilutil.c
./drivers/rilmodem/rilutil.h
./gril/gfunc.h
./gril/gril.h
./gril/grilio.c
./gril/grilio.h
./gril/grilutil.c
./gril/grilutil.h
./plugins/rildev.c
Copyright: 2008-2011, Intel Corporation.
2012-2014, Canonical Ltd.
License: GPL-2.0
Files: ./drivers/atmodem/gnss.c
./drivers/atmodem/gprs.c
./drivers/atmodem/network-registration.c
./drivers/stemodem/gprs-context.c
./drivers/stemodem/radio-settings.c
./drivers/stemodem/stemodem.c
./drivers/stemodem/stemodem.h
./drivers/stemodem/voicecall.c
./include/gnss.h
./plugins/ste.c
./src/gnss.c
./src/gnssagent.c
./src/gnssagent.h
Copyright: 2008-2011, Intel Corporation.
2010-2011, ST-Ericsson AB.
License: GPL-2.0
Files: ./drivers/hfpmodem/devinfo.c
./drivers/hfpmodem/handsfree.c
./dundee/bluez4.c
./dundee/device.c
./dundee/dundee.h
./dundee/main.c
./dundee/manager.c
./include/handsfree.h
./src/handsfree.c
Copyright: 2008-2012, Intel Corporation.
2011-2012, BMW Car IT GmbH.
License: GPL-2.0
Files: ./drivers/isimodem/sms.c
./drivers/isimodem/uicc-util.c
./drivers/isimodem/uicc-util.h
./drivers/isimodem/uicc.c
./drivers/isimodem/uicc.h
./plugins/u8500.c
Copyright: 2009-2011, Nokia Corporation and/or its subsidiary(-ies).
2011, ST-Ericsson AB.
License: GPL-2.0
Files: ./gdbus/client.c
./gdbus/gdbus.h
./gdbus/mainloop.c
./gdbus/object.c
./gdbus/polkit.c
./gdbus/watch.c
Copyright: 2004-2011, Marcel Holtmann <marcel@holtmann.org>
License: GPL-2.0+
Files: ./drivers/rilmodem/sms.c
./drivers/rilmodem/voicecall.c
./gril/gril.c
./plugins/ril.c
./plugins/ril_intel.c
Copyright: 2008-2015, Intel Corporation.
2012-2014, Canonical Ltd.
2013, Jolla Ltd.
License: GPL-2.0
Files: ./drivers/atmodem/atutil.c
./drivers/atmodem/atutil.h
./drivers/atmodem/lte.c
./drivers/gemaltomodem/voicecall.c
Copyright: 2008-2011,2017, Intel Corporation.
2018, Gemalto M2M
License: GPL-2.0
Files: ./drivers/cdmamodem/devinfo.c
./include/ctm.h
./plugins/nokiacdma.c
./src/ctm.c
Copyright: 2008-2011, Intel Corporation.
2010-2011, Nokia Corporation and/or its subsidiary(-ies).
License: GPL-2.0
Files: ./gatchat/gatmux.c
./gatchat/gatmux.h
./gatchat/gsm0710.c
./gatchat/gsm0710.h
Copyright: 2008-2011, Intel Corporation.
2009, Trolltech ASA.
License: GPL-2.0
Files: ./drivers/rilmodem/call-settings.c
./drivers/rilmodem/radio-settings.c
./drivers/rilmodem/ussd.c
Copyright: 2008-2011, Intel Corporation.
2013-2014, Canonical Ltd
2013, Jolla Ltd
License: GPL-2.0
Files: ./drivers/ubloxmodem/lte.c
./drivers/ubloxmodem/ubloxmodem.c
./drivers/ubloxmodem/ubloxmodem.h
Copyright: 2016, Endocode AG.
License: GPL-2.0
Files: ./drivers/gemaltomodem/gemaltomodem.c
./drivers/gemaltomodem/gemaltomodem.h
./plugins/gemalto.c
Copyright: 2017, Vincent Cesson.
2018, Gemalto M2M
License: GPL-2.0
Files: ./drivers/stemodem/caif_rtnl.c
./drivers/stemodem/caif_rtnl.h
./plugins/stemgr.c
Copyright: 2010-2011, ST-Ericsson AB.
License: GPL-2.0
Files: ./drivers/dunmodem/gprs.c
./dundee/dbus.c
Copyright: 2011-2012, BMW Car IT GmbH.
License: GPL-2.0
Files: ./drivers/rilmodem/gprs.c
./drivers/rilmodem/network-registration.c
Copyright: 2008-2011, Intel Corporation.
2010, ST-Ericsson AB.
2012-2013, Canonical Ltd.
2013, Jolla Ltd.
License: GPL-2.0
Files: ./drivers/ubloxmodem/gprs-context.c
./drivers/ubloxmodem/netmon.c
Copyright: 2016, EndoCode AG.
License: GPL-2.0
Files: ./include/lte.h
./src/lte.c
Copyright: 2016, Endocode AG.
2018, Gemalto M2M
License: GPL-2.0
Files: ./drivers/hfpmodem/network-registration.c
./drivers/mbmmodem/location-reporting.c
Copyright: 2008-2011, Intel Corporation.
2009-2010, ProFUSION embedded systems.
License: GPL-2.0
Files: ./drivers/qmimodem/nas.c
./drivers/qmimodem/netmon.c
Copyright: 2017, Jonas Bonn.
License: GPL-2.0
Files: ./drivers/qmimodem/wda.h
./plugins/file-provision.c
Copyright: 2017, Kerlink SA.
License: GPL-2.0
Files: ./plugins/quectel.c
./plugins/ublox.c
Copyright: 2014, Philip Paeps.
License: GPL-2.0
Files: ./btio/btio.c
./btio/btio.h
Copyright: 2009-2010, Marcel Holtmann <marcel@holtmann.org>
2009-2010, Nokia Corporation
License: GPL-2.0+
Files: ./ell/gpio.c
./ell/gpio.h
Copyright: 2019, Geanix.
License: LGPL-2.1+
Files: ./drivers/stemodem/caif_socket.h
./drivers/stemodem/if_caif.h
Copyright: ST-Ericsson AB 2010
License: GPL-2.0
Files: ./plugins/hfp_hf_bluez4.c
Copyright: 2008-2011, Intel Corporation.
2010, ProFUSION embedded systems
2011, BMW Car IT GmbH.
License: GPL-2.0
Files: ./drivers/rilmodem/call-barring.c
Copyright: 2014, Canonical Ltd
2014, Jolla Ltd
License: GPL-2.0
Files: ./drivers/rilmodem/call-forwarding.c
Copyright: 2008-2011, Intel Corporation.
2013, Jolla Ltd
2014, Canonical Ltd.
License: GPL-2.0
Files: ./drivers/rilmodem/rilmodem.c
Copyright: 2008-2011, Intel Corporation.
2012, Canonical, Ltd.
License: GPL-2.0
Files: ./drivers/rilmodem/sim.c
Copyright: 2008-2011, Intel Corporation.
2013, Canonical, Ltd.
2015, Ratchanan Srirattanamet.
License: GPL-2.0
Files: ./plugins/g1.c
Copyright: 2008-2011, Intel Corporation.
2009, Collabora Ltd.
License: GPL-2.0
Files: ./plugins/sim7100.c
Copyright: 2008-2011, Intel Corporation.
2009, Collabora Ltd.
2018, Purism SPC
License: GPL-2.0
Files: ./drivers/qmimodem/lte.c
Copyright: 2018, Data Respons ASA.
2018, Jonas Bonn.
2018, Norrbonn AB.
License: GPL-2.0
Files: ./plugins/bluez4.h
Copyright: 2010, Gustavo F. Padovan <gustavo@padovan.org>
License: GPL-2.0
Files: ./plugins/bluez4.c
Copyright: 2008-2011, Intel Corporation.
2010, Gustavo F. Padovan <gustavo@padovan.org>
2010, ProFUSION embedded systems
License: GPL-2.0
Files: ./dundee/bluez5.c
Copyright: 2013, Instituto Nokia de Tecnologia - INdT
License: GPL-2.0
Files: ./src/location-reporting.c
Copyright: 2010, Nokia Corporation and/or its subsidiary(-ies).
2011, Intel Corporation.
2011, ProFUSION embedded systems.
License: GPL-2.0
Files: ./drivers/ubloxmodem/network-registration.c
Copyright: 2008-2011, Intel Corporation.
2010, ST-Ericsson AB.
2019, Norrbonn AB
License: GPL-2.0
Files: ./plugins/sap.c
Copyright: 2008-2011, Intel Corporation.
2010-2011, ProFUSION embedded systems
License: GPL-2.0
Files: ./drivers/qmimodem/ussd.c
Copyright: 2011-2012, Intel Corporation.
2017, sysmocom s.f.m.c. GmbH <info@sysmocom.de>
License: GPL-2.0
Files: ./include/storage.h
Copyright: 2017, Jolla Ltd.
License: GPL-2.0
Files: ./linux/gpio.h
Copyright: 2016, Linus Walleij
License: GPL-2.0
Files: ./include/location-reporting.h
Copyright: 2010, Nokia Corporation and/or its subsidiary(-ies).
2010, ProFUSION embedded systems.
License: GPL-2.0
Files: ./drivers/telitmodem/gprs-context-ncm.c
Copyright: 2017, Piotr Haber.
License: GPL-2.0
Files: ./drivers/gemaltomodem/location-reporting.c
Copyright: 2017, Vincent Cesson.
License: GPL-2.0
Files: ./drivers/qmimodem/voice.h
Copyright: 2017, sysmocom s.f.m.c. GmbH <info@sysmocom.de>
License: GPL-2.0
Files: ./src/util.c
Copyright: 2008-2011, Intel Corporation.
2009-2010, Nokia Corporation and/or its subsidiary(-ies).
2000, Unicode, Inc.
License: GPL-2.0 and Unicode-strict
Files: ./gril/parcel.c
Copyright: 2011, Joel Armstrong <jcarmst@sandia.gov>
2012, Canonical Ltd.
License: GPL-2.0+
Files: ./gril/parcel.h
Copyright: 2011, Joel Armstrong <jcarmst@sandia.gov>
License: GPL-2.0+
Files: ./doc/ofonod.8
Copyright: 2009, Collabora Ltd.
License: GPL-2.0
Files: ./debian/*
Copyright: 2009, Andres Salomon <dilinger@collabora.co.uk>
License: GPL-2.0
License: GPL-2.0
This package is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License version 2 as published by the Free
Software Foundation
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
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, see <https://www.gnu.org/licenses/>
.
On Debian systems, the complete text of the GNU General
Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
License: GPL-2.0+
This package is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
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, see <https://www.gnu.org/licenses/>
.
On Debian systems, the complete text of the GNU General
Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
License: LGPL-2.1+
This package is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
.
On Debian systems, the complete text of the GNU Lesser General
Public License can be found in "/usr/share/common-licenses/LGPL-2".
License: Unicode-strict
This file is provided as-is by Unicode, Inc. (The Unicode Consortium).
No claims are made as to fitness for any particular purpose. No
warranties of any kind are expressed or implied. The recipient
agrees to determine applicability of information provided. If this
file has been provided on optical media by Unicode, Inc., the sole
remedy for any claim will be exchange of defective media within 90
days of receipt.
.
Unicode, Inc. hereby grants the right to freely use the information
supplied in this file in the creation of products supporting the
Unicode Standard, and to make copies of this file in any form for
internal or external distribution as long as this notice remains
attached.

11
debian/dundee.service vendored Normal file
View File

@@ -0,0 +1,11 @@
[Unit]
Description=DUN service
[Service]
Type=dbus
BusName=org.ofono.dundee
ExecStart=/usr/sbin/dundee --nodetach
Restart=on-failure
[Install]
WantedBy=multi-user.target

3
debian/ofono-dev.docs vendored Normal file
View File

@@ -0,0 +1,3 @@
AUTHORS
README
TODO

2
debian/ofono-dev.install vendored Normal file
View File

@@ -0,0 +1,2 @@
usr/include/*
usr/lib/*/pkgconfig

1
debian/ofono-scripts.install vendored Normal file
View File

@@ -0,0 +1 @@
test/* /usr/share/ofono/scripts

1
debian/ofono.dirs vendored Normal file
View File

@@ -0,0 +1 @@
/var/lib/ofono

3
debian/ofono.docs vendored Normal file
View File

@@ -0,0 +1,3 @@
AUTHORS
README
TODO

7
debian/ofono.install vendored Normal file
View File

@@ -0,0 +1,7 @@
etc/dbus-1/system.d/*
usr/sbin/ofonod
usr/sbin/dundee
etc/ofono
lib/udev/rules.d/*
usr/share/man
lib/systemd/system/

1
debian/ofono.manpages vendored Normal file
View File

@@ -0,0 +1 @@
debian/tmp/usr/share/man/man8/ofonod.8

12
debian/ofono.service vendored Normal file
View File

@@ -0,0 +1,12 @@
[Unit]
Description=oFono Mobile telephony stack
Documentation=man:ofonod(8)
[Service]
Type=dbus
BusName=org.ofono
ExecStart=/usr/sbin/ofonod --nodetach
Restart=on-failure
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,25 @@
From 20653ec096bd0e15c09926f8dfc7771bf2036b9a Mon Sep 17 00:00:00 2001
From: Jonny Lamb <jonny@debian.org>
Date: Mon, 29 Nov 2010 18:04:01 +0000
Subject: [PATCH] doc/ofonod.8: escape minus sign
I'm a sucker for lintian-cleanliness!
Signed-off-by: Jonny Lamb <jonny@debian.org>
---
doc/ofonod.8 | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
Index: ofono-1.9/doc/ofonod.8
===================================================================
--- ofono-1.9.orig/doc/ofonod.8 2010-08-02 08:17:42.000000000 +0300
+++ ofono-1.9/doc/ofonod.8 2012-07-31 19:49:47.000000000 +0300
@@ -18,7 +18,7 @@
.SH OPTIONS
.TP
.B --debug, -d
-Enable debug information output. Note multiple arguments to -d can be
+Enable debug information output. Note multiple arguments to \-d can be
specified, colon, comma or space separated. The arguments are relative
source code filenames for which debugging output should be enabled;
output shell-style globs are accepted (e.g.: "plugins/*:src/main.c").

View File

@@ -0,0 +1,31 @@
From: Laurent Bigonville <bigon@bigon.be>
Date: Sun, 29 Dec 2019 12:45:31 +0100
Subject: Remove After=syslog.target from systemd .service files
---
dundee/dundee.service.in | 1 -
src/ofono.service.in | 1 -
2 files changed, 2 deletions(-)
diff --git a/dundee/dundee.service.in b/dundee/dundee.service.in
index 82c5ef1..561cdf1 100644
--- a/dundee/dundee.service.in
+++ b/dundee/dundee.service.in
@@ -1,6 +1,5 @@
[Unit]
Description=DUN service
-After=syslog.target
[Service]
Type=dbus
diff --git a/src/ofono.service.in b/src/ofono.service.in
index c24ac28..25f2d77 100644
--- a/src/ofono.service.in
+++ b/src/ofono.service.in
@@ -1,6 +1,5 @@
[Unit]
Description=Telephony service
-After=syslog.target
[Service]
Type=dbus

View File

@@ -0,0 +1,34 @@
From: Denis Grigorev <d.grigorev@omp.ru>
Date: Thu, 21 Dec 2023 17:16:38 +0300
Subject: smsutil: Check that submit report fits in memory
This addresses CVE-2023-4234.
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=8d74bc66146ea78620d140640a0a57af86fc8936
Bug-RedHat: https://bugzilla.redhat.com/show_bug.cgi?id=2255399
Bug-UBports: https://gitlab.com/ubports/ubuntu-touch/-/issues/2167
---
src/smsutil.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/smsutil.c b/src/smsutil.c
index 8e57a06..c25dbdb 100644
--- a/src/smsutil.c
+++ b/src/smsutil.c
@@ -938,10 +938,16 @@ static gboolean decode_submit_report(const unsigned char *pdu, int len,
return FALSE;
if (out->type == SMS_TYPE_SUBMIT_REPORT_ERROR) {
+ if (expected > (int) sizeof(out->submit_err_report.ud))
+ return FALSE;
+
out->submit_err_report.udl = udl;
memcpy(out->submit_err_report.ud,
pdu + offset, expected);
} else {
+ if (expected > (int) sizeof(out->submit_ack_report.ud))
+ return FALSE;
+
out->submit_ack_report.udl = udl;
memcpy(out->submit_ack_report.ud,
pdu + offset, expected);

View File

@@ -0,0 +1,28 @@
From: Denis Grigorev <d.grigorev@omp.ru>
Date: Fri, 29 Dec 2023 13:30:04 +0300
Subject: smsutil: Validate the length of the address field
This addresses CVE-2023-4233.
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=1a5fbefa59465bec80425add562bdb1d36ec8e23
Bug-RedHat: https://bugzilla.redhat.com/show_bug.cgi?id=2255396
Bug-UBports: https://gitlab.com/ubports/ubuntu-touch/-/issues/2167
---
src/smsutil.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/smsutil.c b/src/smsutil.c
index c25dbdb..27c5065 100644
--- a/src/smsutil.c
+++ b/src/smsutil.c
@@ -627,6 +627,10 @@ gboolean sms_decode_address_field(const unsigned char *pdu, int len,
if (!next_octet(pdu, len, offset, &addr_len))
return FALSE;
+ /* According to 23.040 9.1.2.5 Address-Length must not exceed 20 */
+ if (addr_len > 20)
+ return FALSE;
+
if (sc && addr_len == 0) {
out->address[0] = '\0';
return TRUE;

View File

@@ -0,0 +1,33 @@
From: Denis Kenzior <denkenz@gmail.com>
Date: Thu, 29 Feb 2024 11:18:25 -0600
Subject: smsutil: ensure the address length in bytes <= 10
If a specially formatted SMS is received, it is conceivable that the
address length might overflow the structure it is being parsed into.
Ensure that the length in bytes of the address never exceeds 10.
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=a90421d8e45d63b304dc010baba24633e7869682
Bug: https://bugzilla.redhat.com/show_bug.cgi?id=2255387
Bug-UBports: https://gitlab.com/ubports/development/core/packaging/ofono/-/issues/2
---
src/smsutil.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/smsutil.c b/src/smsutil.c
index 27c5065..fadf625 100644
--- a/src/smsutil.c
+++ b/src/smsutil.c
@@ -644,7 +644,12 @@ gboolean sms_decode_address_field(const unsigned char *pdu, int len,
else
byte_len = (addr_len + 1) / 2;
- if ((len - *offset) < byte_len)
+ /*
+ * 23.040:
+ * The maximum length of the full address field
+ * (AddressLength, TypeofAddress and AddressValue) is 12 octets.
+ */
+ if ((len - *offset) < byte_len || byte_len > 10)
return FALSE;
out->number_type = bit_field(addr_type, 4, 3);

View File

@@ -0,0 +1,28 @@
From: Denis Kenzior <denkenz@gmail.com>
Date: Thu, 29 Feb 2024 11:42:28 -0600
Subject: smsutil: Check cbs_dcs_decode return value
It is better to explicitly check the return value of cbs_dcs_decode
instead of relying on udhi not being changed due to side-effects.
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=7f2adfa22fbae824f8e2c3ae86a3f51da31ee400
Bug: https://bugzilla.redhat.com/show_bug.cgi?id=2255387
Bug-UBports: https://gitlab.com/ubports/development/core/packaging/ofono/-/issues/2
---
src/smsutil.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/smsutil.c b/src/smsutil.c
index fadf625..1e136c5 100644
--- a/src/smsutil.c
+++ b/src/smsutil.c
@@ -1766,7 +1766,8 @@ gboolean sms_udh_iter_init_from_cbs(const struct cbs *cbs,
const guint8 *hdr;
guint8 max_ud_len;
- cbs_dcs_decode(cbs->dcs, &udhi, NULL, NULL, NULL, NULL, NULL);
+ if (!cbs_dcs_decode(cbs->dcs, &udhi, NULL, NULL, NULL, NULL, NULL))
+ return FALSE;
if (!udhi)
return FALSE;

View File

@@ -0,0 +1,40 @@
From: Denis Kenzior <denkenz@gmail.com>
Date: Thu, 29 Feb 2024 12:06:54 -0600
Subject: simutil: Make sure set_length on the parent succeeds
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=07f48b23e3877ef7d15a7b0b8b79d32ad0a3607e
Bug: https://bugzilla.redhat.com/show_bug.cgi?id=2255387
Bug-UBports: https://gitlab.com/ubports/development/core/packaging/ofono/-/issues/2
---
src/simutil.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/src/simutil.c b/src/simutil.c
index 59d8d5d..0e131e8 100644
--- a/src/simutil.c
+++ b/src/simutil.c
@@ -588,8 +588,9 @@ gboolean ber_tlv_builder_set_length(struct ber_tlv_builder *builder,
if (new_pos > builder->max)
return FALSE;
- if (builder->parent)
- ber_tlv_builder_set_length(builder->parent, new_pos);
+ if (builder->parent &&
+ !ber_tlv_builder_set_length(builder->parent, new_pos))
+ return FALSE;
builder->len = new_len;
@@ -730,9 +731,9 @@ gboolean comprehension_tlv_builder_set_length(
if (builder->pos + new_ctlv_len > builder->max)
return FALSE;
- if (builder->parent)
- ber_tlv_builder_set_length(builder->parent,
- builder->pos + new_ctlv_len);
+ if (builder->parent && !ber_tlv_builder_set_length(builder->parent,
+ builder->pos + new_ctlv_len))
+ return FALSE;
len = MIN(builder->len, new_len);
if (len > 0 && new_len_size != len_size)

View File

@@ -0,0 +1,123 @@
From: Denis Kenzior <denkenz@gmail.com>
Date: Thu, 29 Feb 2024 17:16:00 -0600
Subject: smsutil: Use a safer strlcpy
sms_address_from_string is meant as private API, to be used with string
form addresses that have already been sanitized. However, to be safe,
use a safe version of strcpy to avoid overflowing the buffer in case the
input was not sanitized properly. While here, add a '__' prefix to the
function name to help make it clearer that this API is private and
should be used with more care.
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=8fa1fdfcb54e1edb588c6a5e2688880b065a39c9
Bug: https://bugzilla.redhat.com/show_bug.cgi?id=2255387
Bug-UBports: https://gitlab.com/ubports/development/core/packaging/ofono/-/issues/2
---
src/smsutil.c | 14 +++++++-------
src/smsutil.h | 2 +-
unit/test-sms.c | 6 +++---
3 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/src/smsutil.c b/src/smsutil.c
index 1e136c5..e90bedf 100644
--- a/src/smsutil.c
+++ b/src/smsutil.c
@@ -1888,15 +1888,15 @@ time_t sms_scts_to_time(const struct sms_scts *scts, struct tm *remote)
return ret;
}
-void sms_address_from_string(struct sms_address *addr, const char *str)
+void __sms_address_from_string(struct sms_address *addr, const char *str)
{
addr->numbering_plan = SMS_NUMBERING_PLAN_ISDN;
if (str[0] == '+') {
addr->number_type = SMS_NUMBER_TYPE_INTERNATIONAL;
- strcpy(addr->address, str + 1);
+ l_strlcpy(addr->address, str + 1, sizeof(addr->address));
} else {
addr->number_type = SMS_NUMBER_TYPE_UNKNOWN;
- strcpy(addr->address, str);
+ l_strlcpy(addr->address, str, sizeof(addr->address));
}
}
@@ -3088,7 +3088,7 @@ gboolean status_report_assembly_report(struct status_report_assembly *assembly,
}
}
- sms_address_from_string(&addr, straddr);
+ __sms_address_from_string(&addr, straddr);
if (pending == TRUE && node->deliverable == TRUE) {
/*
@@ -3181,7 +3181,7 @@ void status_report_assembly_expire(struct status_report_assembly *assembly,
while (g_hash_table_iter_next(&iter_addr, (gpointer) &straddr,
(gpointer) &id_table)) {
- sms_address_from_string(&addr, straddr);
+ __sms_address_from_string(&addr, straddr);
g_hash_table_iter_init(&iter_node, id_table);
/* Go through different messages. */
@@ -3475,7 +3475,7 @@ GSList *sms_datagram_prepare(const char *to,
template.submit.vp.relative = 0xA7; /* 24 Hours */
template.submit.dcs = 0x04; /* Class Unspecified, 8 Bit */
template.submit.udhi = TRUE;
- sms_address_from_string(&template.submit.daddr, to);
+ __sms_address_from_string(&template.submit.daddr, to);
offset = 1;
@@ -3602,7 +3602,7 @@ GSList *sms_text_prepare_with_alphabet(const char *to, const char *utf8,
template.submit.srr = use_delivery_reports;
template.submit.mr = 0;
template.submit.vp.relative = 0xA7; /* 24 Hours */
- sms_address_from_string(&template.submit.daddr, to);
+ __sms_address_from_string(&template.submit.daddr, to);
/* There are two enums for the same thing */
dialect = (enum gsm_dialect)alphabet;
diff --git a/src/smsutil.h b/src/smsutil.h
index 01487de..bc21504 100644
--- a/src/smsutil.h
+++ b/src/smsutil.h
@@ -487,7 +487,7 @@ int sms_udl_in_bytes(guint8 ud_len, guint8 dcs);
time_t sms_scts_to_time(const struct sms_scts *scts, struct tm *remote);
const char *sms_address_to_string(const struct sms_address *addr);
-void sms_address_from_string(struct sms_address *addr, const char *str);
+void __sms_address_from_string(struct sms_address *addr, const char *str);
const guint8 *sms_extract_common(const struct sms *sms, gboolean *out_udhi,
guint8 *out_dcs, guint8 *out_udl,
diff --git a/unit/test-sms.c b/unit/test-sms.c
index 3bc099b..88293d5 100644
--- a/unit/test-sms.c
+++ b/unit/test-sms.c
@@ -1603,7 +1603,7 @@ static void test_sr_assembly(void)
sr3.status_report.mr);
}
- sms_address_from_string(&addr, "+4915259911630");
+ __sms_address_from_string(&addr, "+4915259911630");
sra = status_report_assembly_new(NULL);
@@ -1626,7 +1626,7 @@ static void test_sr_assembly(void)
* Send sms-message in the national address-format,
* but receive in the international address-format.
*/
- sms_address_from_string(&addr, "9911630");
+ __sms_address_from_string(&addr, "9911630");
status_report_assembly_add_fragment(sra, sha1, &addr, 4, time(NULL), 2);
status_report_assembly_add_fragment(sra, sha1, &addr, 5, time(NULL), 2);
@@ -1641,7 +1641,7 @@ static void test_sr_assembly(void)
* Send sms-message in the international address-format,
* but receive in the national address-format.
*/
- sms_address_from_string(&addr, "+358123456789");
+ __sms_address_from_string(&addr, "+358123456789");
status_report_assembly_add_fragment(sra, sha1, &addr, 6, time(NULL), 1);
g_assert(status_report_assembly_report(sra, &sr3, id, &delivered));

View File

@@ -0,0 +1,29 @@
From: Jean-Marie Lemetayer <j.lemetayer@kerlink.fr>
Date: Mon, 12 Aug 2024 10:51:34 +0200
Subject: smsutil: check that user data length fits in internal buffer
This addresses CVE-2023-2794.
(cherry picked from commit 5209fd65ff41653d7725e407ccc359c54bb3121f)
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=5209fd65ff41653d7725e407ccc359c54bb3121f
Bug: https://bugzilla.redhat.com/show_bug.cgi?id=2255387
Bug-UBports: https://gitlab.com/ubports/development/core/packaging/ofono/-/issues/2
---
src/smsutil.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/smsutil.c b/src/smsutil.c
index e90bedf..d0bd216 100644
--- a/src/smsutil.c
+++ b/src/smsutil.c
@@ -785,6 +785,9 @@ static gboolean decode_deliver(const unsigned char *pdu, int len,
expected = sms_udl_in_bytes(out->deliver.udl, out->deliver.dcs);
+ if (expected < 0 || expected > (int)sizeof(out->deliver.ud))
+ return FALSE;
+
if ((len - offset) < expected)
return FALSE;

View File

@@ -0,0 +1,27 @@
From: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com>
Date: Tue, 3 Dec 2024 21:43:49 +0200
Subject: stkutil: Fix CVE-2024-7544
(cherry picked from commit a240705a0d5d41eca6de4125ab2349ecde4c873a)
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=a240705a0d5d41eca6de4125ab2349ecde4c873a
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1078555
---
src/stkutil.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/stkutil.c b/src/stkutil.c
index 4f31af4..aef1bb8 100644
--- a/src/stkutil.c
+++ b/src/stkutil.c
@@ -1894,6 +1894,10 @@ static bool parse_dataobj_mms_id(struct comprehension_tlv_iter *iter,
data = comprehension_tlv_iter_get_data(iter);
mi->len = len;
+
+ if (len > sizeof(mi->id))
+ return false;
+
memcpy(mi->id, data, len);
return true;

View File

@@ -0,0 +1,27 @@
From: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com>
Date: Tue, 3 Dec 2024 21:43:50 +0200
Subject: stkutil: Fix CVE-2024-7543
(cherry picked from commit 90e60ada012de42964214d8155260f5749d0dcc7)
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=90e60ada012de42964214d8155260f5749d0dcc7
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1078555
---
src/stkutil.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/stkutil.c b/src/stkutil.c
index aef1bb8..475caaa 100644
--- a/src/stkutil.c
+++ b/src/stkutil.c
@@ -1876,6 +1876,10 @@ static bool parse_dataobj_mms_reference(struct comprehension_tlv_iter *iter,
data = comprehension_tlv_iter_get_data(iter);
mr->len = len;
+
+ if (len > sizeof(mr->ref))
+ return false;
+
memcpy(mr->ref, data, len);
return true;

View File

@@ -0,0 +1,26 @@
From: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com>
Date: Tue, 3 Dec 2024 21:43:51 +0200
Subject: Fix CVE-2024-7547
(cherry picked from commit 305df050d02aea8532f7625d6642685aa530f9b0)
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=305df050d02aea8532f7625d6642685aa530f9b0
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1078555
---
src/smsutil.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/smsutil.c b/src/smsutil.c
index d0bd216..81d34a5 100644
--- a/src/smsutil.c
+++ b/src/smsutil.c
@@ -1479,6 +1479,9 @@ static gboolean decode_command(const unsigned char *pdu, int len,
if ((len - offset) < out->command.cdl)
return FALSE;
+ if (out->command.cdl > sizeof(out->command.cd))
+ return FALSE;
+
memcpy(out->command.cd, pdu + offset, out->command.cdl);
return TRUE;

View File

@@ -0,0 +1,27 @@
From: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com>
Date: Tue, 3 Dec 2024 21:43:52 +0200
Subject: Fix CVE-2024-7546
(cherry picked from commit 79ea6677669e50b0bb9c231765adb4f81c375f63)
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=79ea6677669e50b0bb9c231765adb4f81c375f63
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1078555
---
src/stkutil.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/stkutil.c b/src/stkutil.c
index 475caaa..2bcb509 100644
--- a/src/stkutil.c
+++ b/src/stkutil.c
@@ -1783,6 +1783,10 @@ static bool parse_dataobj_frame_layout(struct comprehension_tlv_iter *iter,
fl->layout = data[0];
fl->len = len - 1;
+
+ if (fl->len > sizeof(fl->size))
+ return false;
+
memcpy(fl->size, data + 1, fl->len);
return true;

View File

@@ -0,0 +1,29 @@
From: "Sicelo A. Mhlongo" <absicsz@gmail.com>
Date: Wed, 4 Dec 2024 12:07:34 +0200
Subject: stkutil: ensure data fits in buffer
Fixes CVE-2024-7545
(cherry picked from commit 556e14548c38c2b96d85881542046ee7ed750bb5)
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=556e14548c38c2b96d85881542046ee7ed750bb5
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1078555
---
src/stkutil.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/stkutil.c b/src/stkutil.c
index 2bcb509..88a715d 100644
--- a/src/stkutil.c
+++ b/src/stkutil.c
@@ -1942,6 +1942,10 @@ static bool parse_dataobj_mms_content_id(
data = comprehension_tlv_iter_get_data(iter);
mci->len = len;
+
+ if (len > sizeof(mci->id))
+ return false;
+
memcpy(mci->id, data, len);
return true;

View File

@@ -0,0 +1,34 @@
From: "Sicelo A. Mhlongo" <absicsz@gmail.com>
Date: Wed, 4 Dec 2024 10:18:51 +0200
Subject: smsutil: check deliver reports fit in buffer
Fixes CVE-2023-4235
(cherry picked from commit 02aa0f9bad3d9e47a152fc045d0f51874d901d7e)
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=02aa0f9bad3d9e47a152fc045d0f51874d901d7e
---
src/smsutil.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/smsutil.c b/src/smsutil.c
index 81d34a5..311f31d 100644
--- a/src/smsutil.c
+++ b/src/smsutil.c
@@ -1241,10 +1241,16 @@ static gboolean decode_deliver_report(const unsigned char *pdu, int len,
return FALSE;
if (out->type == SMS_TYPE_DELIVER_REPORT_ERROR) {
+ if (expected > (int) sizeof(out->deliver_err_report.ud))
+ return FALSE;
+
out->deliver_err_report.udl = udl;
memcpy(out->deliver_err_report.ud,
pdu + offset, expected);
} else {
+ if (expected > (int) sizeof(out->deliver_ack_report.ud))
+ return FALSE;
+
out->deliver_ack_report.udl = udl;
memcpy(out->deliver_ack_report.ud,
pdu + offset, expected);

View File

@@ -0,0 +1,27 @@
From: "Sicelo A. Mhlongo" <absicsz@gmail.com>
Date: Wed, 4 Dec 2024 10:18:52 +0200
Subject: smsutil: check status report fits in buffer
Fixes CVE-2023-4232
(cherry picked from commit 2ff2da7ac374a790f8b2a0216bcb4e3126498225)
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=2ff2da7ac374a790f8b2a0216bcb4e3126498225
---
src/smsutil.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/smsutil.c b/src/smsutil.c
index 311f31d..119407f 100644
--- a/src/smsutil.c
+++ b/src/smsutil.c
@@ -1092,6 +1092,9 @@ static gboolean decode_status_report(const unsigned char *pdu, int len,
if ((len - offset) < expected)
return FALSE;
+ if (expected > (int)sizeof(out->status_report.ud))
+ return FALSE;
+
memcpy(out->status_report.ud, pdu + offset, expected);
}

View File

@@ -0,0 +1,46 @@
From: "Sicelo A. Mhlongo" <absicsz@gmail.com>
Date: Tue, 17 Dec 2024 11:31:28 +0200
Subject: atmodem: sms: ensure buffer is initialized before use
Fixes: CVE-2024-7540
Fixes: CVE-2024-7541
Fixes: CVE-2024-7542
(cherry picked from commit 29ff6334b492504ace101be748b256e6953d2c2f)
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=29ff6334b492504ace101be748b256e6953d2c2f
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1078555
---
drivers/atmodem/sms.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/atmodem/sms.c b/drivers/atmodem/sms.c
index 963c22e..cf8a2b8 100644
--- a/drivers/atmodem/sms.c
+++ b/drivers/atmodem/sms.c
@@ -412,7 +412,7 @@ static void at_cmt_notify(GAtResult *result, gpointer user_data)
struct sms_data *data = ofono_sms_get_data(sms);
GAtResultIter iter;
const char *hexpdu;
- unsigned char pdu[176];
+ unsigned char pdu[176] = {0};
long pdu_len;
int tpdu_len;
@@ -479,7 +479,7 @@ static void at_cmgr_notify(GAtResult *result, gpointer user_data)
struct sms_data *data = ofono_sms_get_data(sms);
GAtResultIter iter;
const char *hexpdu;
- unsigned char pdu[176];
+ unsigned char pdu[176] = {0};
long pdu_len;
int tpdu_len;
@@ -661,7 +661,7 @@ static void at_cmgl_notify(GAtResult *result, gpointer user_data)
struct sms_data *data = ofono_sms_get_data(sms);
GAtResultIter iter;
const char *hexpdu;
- unsigned char pdu[176];
+ unsigned char pdu[176] = {0};
long pdu_len;
int tpdu_len;
int index;

View File

@@ -0,0 +1,84 @@
From: "Sicelo A. Mhlongo" <absicsz@gmail.com>
Date: Tue, 17 Dec 2024 11:31:29 +0200
Subject: ussd: ensure ussd content fits in buffers
Fixes: CVE-2024-7539
(cherry picked from commit 389e2344f86319265fb72ae590b470716e038fdc)
Origin: upstream, https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=389e2344f86319265fb72ae590b470716e038fdc
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1078555
---
drivers/atmodem/ussd.c | 5 ++++-
drivers/huaweimodem/ussd.c | 5 ++++-
drivers/speedupmodem/ussd.c | 5 ++++-
3 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/drivers/atmodem/ussd.c b/drivers/atmodem/ussd.c
index 3be1832..8538cc6 100644
--- a/drivers/atmodem/ussd.c
+++ b/drivers/atmodem/ussd.c
@@ -106,7 +106,7 @@ static void cusd_parse(GAtResult *result, struct ofono_ussd *ussd)
const char *content;
int dcs;
enum sms_charset charset;
- unsigned char msg[160];
+ unsigned char msg[160] = {0};
const unsigned char *msg_ptr = NULL;
long msg_len;
@@ -124,6 +124,9 @@ static void cusd_parse(GAtResult *result, struct ofono_ussd *ussd)
if (!g_at_result_iter_next_number(&iter, &dcs))
dcs = 0;
+ if (strlen(content) > sizeof(msg) * 2)
+ goto out;
+
if (!cbs_dcs_decode(dcs, NULL, NULL, &charset, NULL, NULL, NULL)) {
ofono_error("Unsupported USSD data coding scheme (%02x)", dcs);
status = 4; /* Not supported */
diff --git a/drivers/huaweimodem/ussd.c b/drivers/huaweimodem/ussd.c
index fbed3cd..4160b7d 100644
--- a/drivers/huaweimodem/ussd.c
+++ b/drivers/huaweimodem/ussd.c
@@ -50,7 +50,7 @@ static void cusd_parse(GAtResult *result, struct ofono_ussd *ussd)
GAtResultIter iter;
int status, dcs;
const char *content;
- unsigned char msg[160];
+ unsigned char msg[160] = {0};
const unsigned char *msg_ptr = NULL;
long msg_len;
@@ -68,6 +68,9 @@ static void cusd_parse(GAtResult *result, struct ofono_ussd *ussd)
if (!g_at_result_iter_next_number(&iter, &dcs))
dcs = 0;
+ if (strlen(content) > sizeof(msg) * 2)
+ goto out;
+
msg_ptr = decode_hex_own_buf(content, -1, &msg_len, 0, msg);
out:
diff --git a/drivers/speedupmodem/ussd.c b/drivers/speedupmodem/ussd.c
index 57b91d7..99af19a 100644
--- a/drivers/speedupmodem/ussd.c
+++ b/drivers/speedupmodem/ussd.c
@@ -49,7 +49,7 @@ static void cusd_parse(GAtResult *result, struct ofono_ussd *ussd)
GAtResultIter iter;
int status, dcs;
const char *content;
- unsigned char msg[160];
+ unsigned char msg[160] = {0};
const unsigned char *msg_ptr = NULL;
long msg_len;
@@ -67,6 +67,9 @@ static void cusd_parse(GAtResult *result, struct ofono_ussd *ussd)
if (!g_at_result_iter_next_number(&iter, &dcs))
dcs = 0;
+ if (strlen(content) > sizeof(msg) * 2)
+ goto out;
+
msg_ptr = decode_hex_own_buf(content, -1, &msg_len, 0, msg);
out:

18
debian/patches/series vendored Normal file
View File

@@ -0,0 +1,18 @@
0001-doc-ofonod.8-escape-minus-sign.patch
0002-Remove-After-syslog.target-from-systemd-.service-fil.patch
0003-smsutil-Check-that-submit-report-fits-in-memory.patch
0004-smsutil-Validate-the-length-of-the-address-field.patch
CVE-2023-2794/0005-smsutil-ensure-the-address-length-in-bytes-10.patch
CVE-2023-2794/0006-smsutil-Check-cbs_dcs_decode-return-value.patch
CVE-2023-2794/0007-simutil-Make-sure-set_length-on-the-parent-succeeds.patch
CVE-2023-2794/0008-smsutil-Use-a-safer-strlcpy.patch
CVE-2023-2794/0009-smsutil-check-that-user-data-length-fits-in-internal.patch
CVEs/0010-stkutil-Fix-CVE-2024-7544.patch
CVEs/0011-stkutil-Fix-CVE-2024-7543.patch
CVEs/0012-Fix-CVE-2024-7547.patch
CVEs/0013-Fix-CVE-2024-7546.patch
CVEs/0014-stkutil-ensure-data-fits-in-buffer.patch
CVEs/0015-smsutil-check-deliver-reports-fit-in-buffer.patch
CVEs/0016-smsutil-check-status-report-fits-in-buffer.patch
CVEs/0017-atmodem-sms-ensure-buffer-is-initialized-before-use.patch
CVEs/0018-ussd-ensure-ussd-content-fits-in-buffers.patch

33
debian/rules vendored Executable file
View File

@@ -0,0 +1,33 @@
#!/usr/bin/make -f
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
CONFIGURE_FLAGS := \
--enable-bluetooth \
--enable-dundee \
--enable-external-ell \
--with-systemdunitdir=/lib/systemd/system
%:
dh $@ --with=autoreconf
override_dh_auto_configure:
dh_auto_configure -- $(CONFIGURE_FLAGS)
override_dh_install:
install -D -m 0644 plugins/ofono.rules debian/tmp/lib/udev/rules.d/97-ofono.rules
install -D -m 0644 plugins/ofono-speedup.rules debian/tmp/lib/udev/rules.d/97-ofono-speedup.rules
dh_install
override_dh_fixperms-indep:
chmod 0755 debian/ofono-scripts/usr/share/ofono/scripts/set-sms-alphabet
chmod 0755 debian/ofono-scripts/usr/share/ofono/scripts/test-serving-cell-info
dh_fixperms
override_dh_installsystemd:
dh_installsystemd --name=ofono
dh_installsystemd --name=dundee
override_dh_auto_test:
dh_auto_test --no-parallel

1
debian/source/format vendored Normal file
View File

@@ -0,0 +1 @@
3.0 (quilt)

51
debian/upstream/signing-key.asc vendored Normal file
View File

@@ -0,0 +1,51 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
0tHT9Q==
=1JNt
-----END PGP PUBLIC KEY BLOCK-----