237 lines
8.6 KiB
RPMSpec
237 lines
8.6 KiB
RPMSpec
#
|
|
# spec file for package osmo-remsim
|
|
#
|
|
# Copyright (c) 2018, Martin Hauke <mardnh@gmx.de>
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
%define sover 2
|
|
Name: osmo-remsim
|
|
Version: @VERSION@
|
|
Release: 0
|
|
Summary: Osmocom remote SIM software suite
|
|
License: GPL-2.0-or-later
|
|
Group: Productivity/Telephony/Servers
|
|
URL: https://osmocom.org/projects/osmo-remsim
|
|
Source: %{name}-%{version}.tar.xz
|
|
BuildRequires: autoconf
|
|
BuildRequires: automake
|
|
BuildRequires: libcsv-devel
|
|
BuildRequires: libtool
|
|
BuildRequires: pkgconfig
|
|
%if 0%{?suse_version}
|
|
BuildRequires: systemd-rpm-macros
|
|
%endif
|
|
BuildRequires: pkgconfig(libasn1c) >= 0.9.30
|
|
BuildRequires: pkgconfig(libosmoabis)
|
|
BuildRequires: pkgconfig(libosmocore) >= 1.6.0
|
|
BuildRequires: pkgconfig(libosmogsm) >= 0.11.0
|
|
BuildRequires: pkgconfig(libosmosim)
|
|
BuildRequires: pkgconfig(libpcsclite)
|
|
BuildRequires: pkgconfig(libulfius)
|
|
BuildRequires: pkgconfig(libusb-1.0)
|
|
BuildRequires: pkgconfig(libosmousb)
|
|
BuildRequires: pkgconfig(libosmo-simtrace2) >= 0.8.0
|
|
%{?systemd_requires}
|
|
|
|
%description
|
|
osmo-remsim is a suite of software programs enabling physical/geographic
|
|
separation of a cellular phone (or modem) on the one hand side and the
|
|
SIM/USIM/ISIM card on the other side.
|
|
|
|
Using osmo-remsim, you can operate an entire fleet of modems/phones, as
|
|
well as banks of SIM cards and dynamically establish or remove the
|
|
connections between modems/phones and cards.
|
|
|
|
So in technical terms, it behaves like a proxy for the ISO 7816 smart
|
|
card interface between the MS/UE and the UICC/SIM/USIM/ISIM.
|
|
|
|
While originally designed to be used in context of cellular networks,
|
|
there is nothing cellular specific in the system. It can therefore also
|
|
be used with other systems that use contact based smart cards according
|
|
to ISO 7816. Currently only the T=0 protocol with standard
|
|
(non-extended) APDUs is supported. Both T=1 and extended APDU support
|
|
can easily be added as a pure software update, should it be required at
|
|
some future point.
|
|
|
|
%package -n libosmo-rspro%{sover}
|
|
Summary: Osmocom Remote SIM - Shared Library
|
|
License: GPL-2.0-or-later
|
|
Group: System/Libraries
|
|
|
|
%description -n libosmo-rspro%{sover}
|
|
libosmo-rsrpo is an utility library for encoding/decoding the ASN.1 BER
|
|
based RSPRO (Remote SIM Protocol) protocol used between the osmo-remsim
|
|
programs.
|
|
|
|
%package -n libosmo-rspro-devel
|
|
Summary: Osmocom Remote SIM - Shared Library Development Haders
|
|
License: GPL-2.0-or-later
|
|
Group: Development/Libraries/C and C++
|
|
Requires: libosmo-rspro%{sover} = %{version}
|
|
|
|
%description -n libosmo-rspro-devel
|
|
libosmo-rsrpo is an utility library for encoding/decoding the ASN.1 BER
|
|
based RSPRO (Remote SIM Protocol) protocol used between the osmo-remsim
|
|
programs.
|
|
|
|
This subpackage contains libraries and header files for developing
|
|
applications that want to make use of libosmo-rspro.
|
|
|
|
%package -n osmo-remsim-server
|
|
Summary: Osmocom Remote SIM - Central Server
|
|
License: GPL-2.0-or-later
|
|
Group: Productivity/Telephony/Servers
|
|
|
|
%description -n osmo-remsim-server
|
|
The remsim-server is the central element of a osmo-remsim deployment,
|
|
it maintains a list of clients + bankds connected to it, as well as the
|
|
dynamic SIM card mappings between them.
|
|
|
|
%package -n osmo-remsim-apitool
|
|
Summary: Osmocom Remote SIM - API tool for Server
|
|
License: GPL-2.0-or-later
|
|
Group: Productivity/Telephony/Servers
|
|
Requires: python3
|
|
|
|
%description -n osmo-remsim-apitool
|
|
This is a small python tool for generating API requests to remsim-server,
|
|
which can be used by the system administrator to introspect and/or modify
|
|
the state (mostly slotmaps).
|
|
|
|
%package -n osmo-remsim-bankd
|
|
Summary: Osmocom Remote SIM - Bank Daemon
|
|
License: GPL-2.0-or-later
|
|
Group: Productivity/Telephony/Servers
|
|
|
|
%description -n osmo-remsim-bankd
|
|
The remsim-bankd is managing a bank of SIM card readers and their
|
|
respective cards. It establishes a control connection to remsim-server
|
|
and receives inbound connections from remsim-clients.
|
|
|
|
%package -n osmo-remsim-client-st2
|
|
Summary: Osmocom Remote SIM - Client for SIMtrace2
|
|
License: GPL-2.0-or-later
|
|
Group: Productivity/Telephony/Servers
|
|
|
|
%description -n osmo-remsim-client-st2
|
|
Description: Osmocom Remote SIM - Client for SIMtrace2 cardem firmware
|
|
The remsim-client is managing a given phone/modem. It attaches to the
|
|
'cardem' firmware of a SIMtrcace2 (or compatible, such as sysmoQMOD)
|
|
hardware and forwards the SIM card communication to a remsim-bankd,
|
|
under the control of remsim-server.
|
|
|
|
%package -n osmo-remsim-client-shell
|
|
Summary: Osmocom Remote SIM - Interactive Client
|
|
License: GPL-2.0-or-later
|
|
Group: Productivity/Telephony/Servers
|
|
|
|
%description -n osmo-remsim-client-shell
|
|
The remsim-client-shell is for manually interacting with a remote SIM
|
|
card via remsim-bankd + remsim-server. It's mostly a test/debug tool.
|
|
|
|
%package -n libifd-osmo-remsim-client0
|
|
Summary: Osmocom Remote SIM Client - PC/SC driver
|
|
License: GPL-2.0-or-later
|
|
Group: Productivity/Telephony/Servers
|
|
Requires: pcsc-lite
|
|
|
|
%description -n libifd-osmo-remsim-client0
|
|
This is an incarnation of osmo-remsim-client which can plug as ifd_handler
|
|
driver into pcscd. This means you can use remote smart cards managed
|
|
by osmo-remsim-server via normal PC/SC applications.
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
%build
|
|
echo "%{version}" >.tarball-version
|
|
autoreconf -fi
|
|
%configure \
|
|
--disable-static \
|
|
--docdir=%{_docdir}/osmo-remsim \
|
|
--with-systemdsystemunitdir=%{_unitdir}
|
|
make V=1 %{?_smp_mflags}
|
|
|
|
%install
|
|
%make_install
|
|
find %{buildroot} -type f -name "*.la" -delete -print
|
|
|
|
%check
|
|
make %{?_smp_mflags} check || find . -name testsuite.log -exec cat {} +
|
|
|
|
%post -n libosmo-rspro%{sover} -p /sbin/ldconfig
|
|
%postun -n libosmo-rspro%{sover} -p /sbin/ldconfig
|
|
|
|
%if 0%{?suse_version}
|
|
%pre -n osmo-remsim-bankd %service_add_pre osmo-remsim-bankd.service
|
|
%post -n osmo-remsim-bankd %service_add_post osmo-remsim-bankd.service
|
|
%preun -n osmo-remsim-bankd %service_del_preun osmo-remsim-bankd.service
|
|
%postun -n osmo-remsim-bankd %service_del_postun osmo-remsim-bankd.service
|
|
|
|
%pre -n osmo-remsim-client-st2 %service_add_pre osmo-remsim-client@.service
|
|
%post -n osmo-remsim-client-st2 %service_add_post osmo-remsim-client@.service
|
|
%preun -n osmo-remsim-client-st2 %service_del_preun osmo-remsim-client@.service
|
|
%postun -n osmo-remsim-client-st2 %service_del_postun osmo-remsim-client@.service
|
|
|
|
%pre -n osmo-remsim-server %service_add_pre osmo-remsim-server.service
|
|
%post -n osmo-remsim-server %service_add_post osmo-remsim-server.service
|
|
%preun -n osmo-remsim-server %service_del_preun osmo-remsim-server.service
|
|
%postun -n osmo-remsim-server %service_del_postun osmo-remsim-server.service
|
|
%endif
|
|
|
|
%files -n libosmo-rspro%{sover}
|
|
%license COPYING
|
|
%doc README.md
|
|
%{_libdir}/libosmo-rspro.so.%{sover}*
|
|
|
|
%files -n libosmo-rspro-devel
|
|
%dir %{_includedir}/osmocom/rspro
|
|
%{_includedir}/osmocom/rspro/*
|
|
%{_libdir}/libosmo-rspro.so
|
|
%{_libdir}/pkgconfig/libosmo-rspro.pc
|
|
|
|
%files -n osmo-remsim-server
|
|
%{_bindir}/osmo-remsim-server
|
|
%{_unitdir}/osmo-remsim-server.service
|
|
|
|
%files -n osmo-remsim-apitool
|
|
%{_bindir}/osmo-remsim-apitool
|
|
|
|
%files -n osmo-remsim-bankd
|
|
%{_bindir}/osmo-remsim-bankd
|
|
%{_unitdir}/osmo-remsim-bankd.service
|
|
%config(noreplace) %{_sysconfdir}/default/osmo-remsim-bankd
|
|
%dir %{_sysconfdir}/osmocom
|
|
%config(noreplace) %{_sysconfdir}/osmocom/bankd_pcsc_slots.csv
|
|
%dir %{_docdir}/osmo-remsim
|
|
%dir %{_docdir}/osmo-remsim/examples
|
|
%{_docdir}/osmo-remsim/examples/bankd_pcsc_slots.csv
|
|
|
|
%files -n osmo-remsim-client-shell
|
|
%{_bindir}/osmo-remsim-client-shell
|
|
|
|
%files -n osmo-remsim-client-st2
|
|
%{_bindir}/osmo-remsim-client-st2
|
|
%{_unitdir}/osmo-remsim-client*
|
|
%config(noreplace) %{_sysconfdir}/default/osmo-remsim-client*
|
|
|
|
%files -n libifd-osmo-remsim-client0
|
|
%if 0%{?centos_ver}
|
|
%dir %{_libdir}/pcsc/drivers/libifd-osmo-remsim-client.bundle
|
|
%{_libdir}/pcsc/drivers/libifd-osmo-remsim-client.bundle/*
|
|
%else
|
|
%dir %{_libdir}/readers/libifd-osmo-remsim-client.bundle
|
|
%{_libdir}/readers/libifd-osmo-remsim-client.bundle/*
|
|
%endif
|
|
%config(noreplace) %{_sysconfdir}/reader.conf.d/osmo-remsim-client-reader_conf
|
|
|
|
%changelog
|