osmo-ci[master]: Use stow for dependency management
Patch Set 3: > (1 comment) Abstract the fact away whether the dependency was provided by compilation from source or by extraction of an artifact tar-ball. One artifact tar-ball should contain the result of a make install run of a single library to an empty directory. >From a dependency consummation perspective the rest does not change. You extract the content of an artifact tar file (or make install) to a distinct directory and do that for all artifacts. Those directories are then stowed to a final destination directory which is then the sole directory where the package to be built searches for its dependencies. -- To view, visit https://gerrit.osmocom.org/2691 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I8f5012419495a656912b7b71e4f76ce102c6b63a Gerrit-PatchSet: 3 Gerrit-Project: osmo-ci Gerrit-Branch: master Gerrit-Owner: Alexander HuemerGerrit-Reviewer: Alexander Huemer Gerrit-Reviewer: André Boddenberg Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Holger Freyther Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: blobb Gerrit-Reviewer: neels Gerrit-HasComments: No
osmo-tetra[laforge/sq5bpf-rebase-20161218]: adding dmo support
Patch Set 1: (1 comment) > (4 comments) > > Thnaks a lot for your contribution! It is very much appreciated, > please forgitve me missing it in the patch review so far. It's > not usual that it waits for three weeks. If you hsould see that > again, feel free to send a "ping" either by private mail or here as > a "reply" on the patch. Thanks for your comments. I revised my patch and fixed the most things. https://gerrit.osmocom.org/#/c/2817/1/src/phy/tetra_burst.c File src/phy/tetra_burst.c: Line 305: #if 0 /* not used */ > not used by whom? why? I think more context is needed here. also, it seems You are right, it is not necessary for DMO. I comment it out because the code runs faster and it is not used in "tetra_burst_sync.c". -- To view, visit https://gerrit.osmocom.org/2817 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ifa5521d7313595384e74dd790a56550755b93fe9 Gerrit-PatchSet: 1 Gerrit-Project: osmo-tetra Gerrit-Branch: laforge/sq5bpf-rebase-20161218 Gerrit-Owner: allesklar2Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Vadim Yanitskiy Gerrit-Reviewer: allesklar2 Gerrit-HasComments: Yes
osmo-trx[master]: Add '-t' command line option to enable SCHED_RR
Patch Set 1: > so should we go for this kind of patch, or should I push another > version that does it unconditionally? My preference would be to go > for the latter, to have a "sane default" configureation. My only concern with default RR priority is that it requires proper permissions or root access. Otherwise we should go with what works. There is code duplication on the priority setting. I'm fine with the raw POSIX version, but I would like to remove the priority scheduling calls to UHD if we go with that approach. -- To view, visit https://gerrit.osmocom.org/3080 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ia2452b9763960b2be37fbeee9d832554da68a53f Gerrit-PatchSet: 1 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: Harald WelteGerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Tom Tsou Gerrit-HasComments: No
osmo-trx[master]: LimeSDR: Change device detection to work with USB and PCIe v...
Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/3073 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ie43610de0b2196d84caf09717ec8c8ca75ab926d Gerrit-PatchSet: 1 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: Harald WelteGerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Tom Tsou Gerrit-HasComments: No
osmo-trx[master]: LimeSDR: change tx window type to TX_WINDOW_FIXED
Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/3074 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I8de5b165ccd72a62b0f16655618e24ca740d9637 Gerrit-PatchSet: 1 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: Harald WelteGerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Tom Tsou Gerrit-HasComments: No
osmo-trx[master]: deb: remove unused dependency
Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/3079 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: Id2ab1facad703fa0c1d45084e70d41e73dbad6e7 Gerrit-PatchSet: 1 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: MaxGerrit-Reviewer: Alexander Chemeris Gerrit-Reviewer: Ivan Kluchnikov Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Tom Tsou Gerrit-HasComments: No
osmo-trx[master]: LimeSDR: Fix sample value range
Patch Set 1: (2 comments) https://gerrit.osmocom.org/#/c/3075/1/Transceiver52M/UHDDevice.cpp File Transceiver52M/UHDDevice.cpp: PS1, Line 1188: 32767 Is there a reason to not use SHRT_MAX instead of 32767 here? PS1, Line 1197: 32767 Line can be removed unless there is a good reason not to use SHRT_MAX. -- To view, visit https://gerrit.osmocom.org/3075 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I58b8b6b71648bd9cbc105ddaaa9a7cf0a31b3d47 Gerrit-PatchSet: 1 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: Harald WelteGerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Tom Tsou Gerrit-HasComments: Yes
osmo-trx[master]: transceiver: Avoid sending clock indications when trx is not...
Patch Set 3: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/3120 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I91b81a4d7627cec39c1814a39ed4be306681b874 Gerrit-PatchSet: 3 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Alexander Chemeris Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Reviewer: Tom Tsou Gerrit-HasComments: No
[MERGED] osmo-trx[master]: cosmetic: transciever: Remove trailing whitespaces
Tom Tsou has submitted this change and it was merged. Change subject: cosmetic: transciever: Remove trailing whitespaces .. cosmetic: transciever: Remove trailing whitespaces Change-Id: Ib3fbe768048b2a34a75ace9688e306720e67019a --- M Transceiver52M/Transceiver.cpp M Transceiver52M/Transceiver.h 2 files changed, 11 insertions(+), 12 deletions(-) Approvals: Tom Tsou: Looks good to me, approved Jenkins Builder: Verified diff --git a/Transceiver52M/Transceiver.cpp b/Transceiver52M/Transceiver.cpp index 61da416..d5b75d7 100644 --- a/Transceiver52M/Transceiver.cpp +++ b/Transceiver52M/Transceiver.cpp @@ -429,7 +429,7 @@ case V: state->fillerModulus[timeslot] = 51; break; -//case V: +//case V: case VII: state->fillerModulus[timeslot] = 102; break; @@ -544,7 +544,7 @@ /* * Pull bursts from the FIFO and handle according to the slot - * and burst correlation type. Equalzation is currently disabled. + * and burst correlation type. Equalzation is currently disabled. */ SoftVector *Transceiver::pullRadioVector(GSM::Time , double , bool , double , double , @@ -655,7 +655,7 @@ mTxPriorityQueues[i].clear(); } - + void Transceiver::driveControl(size_t chan) { int MAX_PACKET_LENGTH = 100; @@ -804,7 +804,7 @@ LOG(WARNING) << "bogus message on control interface"; sprintf(response,"RSP SETSLOT 1 %d %d",timeslot,corrCode); return; -} +} mStates[chan].chanType[timeslot] = (ChannelCombination) corrCode; setModulus(timeslot, chan); sprintf(response,"RSP SETSLOT 0 %d %d",timeslot,corrCode); @@ -852,14 +852,14 @@ frameNum = (frameNum << 8) | (0x0ff & buffer[i+1]); LOG(DEBUG) << "rcvd. burst at: " << GSM::Time(frameNum,timeSlot); - + int RSSI = (int) buffer[5]; BitVector newBurst(burstLen); BitVector::iterator itr = newBurst.begin(); char *bufferItr = buffer+6; - while (itr < newBurst.end()) + while (itr < newBurst.end()) *itr++ = *bufferItr++; - + GSM::Time currTime = GSM::Time(frameNum,timeSlot); addRadioVector(chan, newBurst, RSSI, currTime); @@ -945,7 +945,7 @@ { /** - Features a carefully controlled latency mechanism, to + Features a carefully controlled latency mechanism, to assure that transmit packets arrive at the radio/USRP before they need to be transmitted. @@ -956,7 +956,7 @@ RadioClock *radioClock = (mRadioInterface->getClock()); - + if (mOn) { //radioClock->wait(); // wait until clock updates LOG(DEBUG) << "radio clock " << radioClock->get(); diff --git a/Transceiver52M/Transceiver.h b/Transceiver52M/Transceiver.h index 6f9cb92..26d6c3c 100644 --- a/Transceiver52M/Transceiver.h +++ b/Transceiver52M/Transceiver.h @@ -89,7 +89,7 @@ /** The Transceiver class, responsible for physical layer of basestation */ class Transceiver { public: - /** Transceiver constructor + /** Transceiver constructor @param wBasePort base port number of UDP sockets @param TRXAddress IP address of the TRX manager, as a string @param wSPS number of samples per GSM symbol @@ -169,7 +169,7 @@ GSM::Time mTransmitLatency; ///< latency between basestation clock and transmit deadline clock GSM::Time mLatencyUpdateTime; ///< last time latency was updated - GSM::Time mTransmitDeadlineClock; ///< deadline for pushing bursts into transmit FIFO + GSM::Time mTransmitDeadlineClock; ///< deadline for pushing bursts into transmit FIFO GSM::Time mLastClockUpdateTime; ///< last time clock update was sent up to core RadioInterface *mRadioInterface; ///< associated radioInterface object @@ -275,4 +275,3 @@ /** transmit queueing thread loop */ void *TxUpperLoopAdapter(TransceiverChannel *); - -- To view, visit https://gerrit.osmocom.org/3119 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: Ib3fbe768048b2a34a75ace9688e306720e67019a Gerrit-PatchSet: 2 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Tom Tsou
[MERGED] osmo-trx[master]: transceiver: Avoid sending clock indications when trx is not...
Tom Tsou has submitted this change and it was merged. Change subject: transceiver: Avoid sending clock indications when trx is not powered on .. transceiver: Avoid sending clock indications when trx is not powered on Stop calling writeClockInterface() when receiving commands in Transceiver::driveControl, otherwise it fools osmo-bts-trx clock skew check because it is always sending a clock indication with the same fn when it issues any commands during the time in between CMD POWEROFF and RSP POWERON, because fn is not increased during that period. Also use mForceClockInterface flag to delay delivery of first IND CLOCK until we start serving frames, otherwise the first one is sent and only after a long period of time the next clock indications are sent, when the radio starts to process bursts. That makes osmo-bts-trx unhappy because it expects to receive an IND CLOCK aprox at least every 400 frames. This way also we send the first IND CLOCK after the RSP POWERON 0 response. Change-Id: I91b81a4d7627cec39c1814a39ed4be306681b874 --- M Transceiver52M/Transceiver.cpp M Transceiver52M/Transceiver.h 2 files changed, 6 insertions(+), 8 deletions(-) Approvals: Tom Tsou: Looks good to me, approved Alexander Chemeris: Looks good to me, but someone else must approve Neels Hofmeyr: Looks good to me, but someone else must approve Jenkins Builder: Verified diff --git a/Transceiver52M/Transceiver.cpp b/Transceiver52M/Transceiver.cpp index d5b75d7..bf2dd6e 100644 --- a/Transceiver52M/Transceiver.cpp +++ b/Transceiver52M/Transceiver.cpp @@ -121,7 +121,7 @@ mClockSocket(wBasePort, wTRXAddress, mBasePort + 100), mTransmitLatency(wTransmitLatency), mRadioInterface(wRadioInterface), rssiOffset(wRssiOffset), -mSPSTx(tx_sps), mSPSRx(rx_sps), mChans(chans), mEdge(false), mOn(false), +mSPSTx(tx_sps), mSPSRx(rx_sps), mChans(chans), mEdge(false), mOn(false), mForceClockInterface(false), mTxFreq(0.0), mRxFreq(0.0), mTSC(0), mMaxExpectedDelayAB(0), mMaxExpectedDelayNB(0), mWriteBurstToDiskMask(0) { @@ -273,7 +273,7 @@ TxUpperLoopAdapter, (void*) chan); } - writeClockInterface(); + mForceClockInterface = true; mOn = true; return true; } @@ -677,9 +677,6 @@ sscanf(buffer,"%3s %s",cmdcheck,command); - if (!chan) -writeClockInterface(); - if (strcmp(cmdcheck,"CMD")!=0) { LOG(WARNING) << "bogus message on control interface"; return; @@ -873,9 +870,9 @@ { if (!mRadioInterface->driveReceiveRadio()) { usleep(10); - } else { -if (mTransmitDeadlineClock > mLastClockUpdateTime + GSM::Time(216,0)) - writeClockInterface(); + } else if (mForceClockInterface || mTransmitDeadlineClock > mLastClockUpdateTime + GSM::Time(216,0)) { +mForceClockInterface = false; +writeClockInterface(); } } diff --git a/Transceiver52M/Transceiver.h b/Transceiver52M/Transceiver.h index 26d6c3c..1eb1d1d 100644 --- a/Transceiver52M/Transceiver.h +++ b/Transceiver52M/Transceiver.h @@ -208,6 +208,7 @@ bool mEdge; bool mOn; ///< flag to indicate that transceiver is powered on + bool mForceClockInterface; ///< flag to indicate whether IND CLOCK shall be sent unconditionally after transceiver is started bool mHandover[8][8];///< expect handover to the timeslot/subslot double mTxFreq; ///< the transmit frequency double mRxFreq; ///< the receive frequency -- To view, visit https://gerrit.osmocom.org/3120 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: I91b81a4d7627cec39c1814a39ed4be306681b874 Gerrit-PatchSet: 3 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Alexander Chemeris Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Reviewer: Tom Tsou
osmo-trx[master]: cosmetic: transciever: Remove trailing whitespaces
Patch Set 2: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/3119 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ib3fbe768048b2a34a75ace9688e306720e67019a Gerrit-PatchSet: 2 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Tom Tsou Gerrit-HasComments: No
[PATCH] libosmo-sccp[master]: configure.ac: Fix C(PP)FLAGS for BSD build
Review at https://gerrit.osmocom.org/3133 configure.ac: Fix C(PP)FLAGS for BSD build Issue first found in libosmocore. It seems the BSD build doesn't use bash which means using += to append to a variable doesn't work correctly. Change-Id: I33f6b9de4990de0c4d3a6fc0bd7df632094e79ac --- M configure.ac 1 file changed, 2 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-sccp refs/changes/33/3133/1 diff --git a/configure.ac b/configure.ac index 36cbb59..200f55d 100644 --- a/configure.ac +++ b/configure.ac @@ -53,8 +53,8 @@ CFLAGS="$saved_CFLAGS" AC_SUBST(SYMBOL_VISIBILITY) -CFLAGS+=" -Wall" -CPPFLAGS+=" -Wall" +CFLAGS="$CFLAGS -Wall" +CPPFLAGS="$CFLAGS -Wall" AC_OUTPUT( libosmo-sigtran.pc -- To view, visit https://gerrit.osmocom.org/3133 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I33f6b9de4990de0c4d3a6fc0bd7df632094e79ac Gerrit-PatchSet: 1 Gerrit-Project: libosmo-sccp Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol
[PATCH] libosmo-sccp[master]: sccp_scoc: Fix compilation warning and leave a pragma message
Review at https://gerrit.osmocom.org/3135 sccp_scoc: Fix compilation warning and leave a pragma message Following warning was being printed: warning: statement will never be executed [-Wswitch-unreachable] The code in there seems not to be finished, so better leave the code and a pragma message to get notified when we compile. Change-Id: I4e2c482803954c984cb6792b11b4ea0fe674e269 --- M src/sccp_scoc.c 1 file changed, 3 insertions(+), 3 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-sccp refs/changes/35/3135/1 diff --git a/src/sccp_scoc.c b/src/sccp_scoc.c index 3a2cb47..3d43448 100644 --- a/src/sccp_scoc.c +++ b/src/sccp_scoc.c @@ -938,10 +938,10 @@ struct osmo_scu_prim *prim = NULL; switch (event) { - /* TODO: internal disco */ +#pragma message ("TODO: internal disco: send N-DISCONNECT.ind to user") /* send N-DISCONNECT.ind to user */ - scu_gen_encode_and_send(conn, event, xua, OSMO_SCU_PRIM_N_DISCONNECT, - PRIM_OP_INDICATION); + /*scu_gen_encode_and_send(conn, event, xua, OSMO_SCU_PRIM_N_DISCONNECT, + PRIM_OP_INDICATION);*/ /* fall-through */ case SCOC_E_SCU_N_DISC_REQ: prim = data; -- To view, visit https://gerrit.osmocom.org/3135 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I4e2c482803954c984cb6792b11b4ea0fe674e269 Gerrit-PatchSet: 1 Gerrit-Project: libosmo-sccp Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol
[PATCH] libosmo-sccp[master]: sccp_scoc: Fix trailing whitespace
Review at https://gerrit.osmocom.org/3134 sccp_scoc: Fix trailing whitespace Change-Id: Ia93bb7d59e4e2c31b693e2c3424d34386762d02e --- M src/sccp_scoc.c 1 file changed, 2 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-sccp refs/changes/34/3134/1 diff --git a/src/sccp_scoc.c b/src/sccp_scoc.c index 628b63b..3a2cb47 100644 --- a/src/sccp_scoc.c +++ b/src/sccp_scoc.c @@ -122,7 +122,7 @@ }; /*** - * various helper functions + * various helper functions ***/ enum sccp_connection_state { @@ -1596,7 +1596,7 @@ } } -/*! \brief Main entrance function for primitives from SCCP User +/*! \brief Main entrance function for primitives from SCCP User * \param[in] scu SCCP User sending us the primitive * \param[in] oph Osmocom primitive sent by the user * \returns 0 on success; negative on error */ -- To view, visit https://gerrit.osmocom.org/3134 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia93bb7d59e4e2c31b693e2c3424d34386762d02e Gerrit-PatchSet: 1 Gerrit-Project: libosmo-sccp Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol
openbsc[master]: transaction: reject calls from unidentified subscribers
Patch Set 3: (1 comment) https://gerrit.osmocom.org/#/c/3127/3/openbsc/src/libmsc/transaction.c File openbsc/src/libmsc/transaction.c: Line 74:if (subscr == NULL) Is this normal? Should we log smth or caller takes care of it? -- To view, visit https://gerrit.osmocom.org/3127 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ia8739b6e329ab02c0064270d02ad1d6ee245520d Gerrit-PatchSet: 3 Gerrit-Project: openbsc Gerrit-Branch: master Gerrit-Owner: dexterGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Max Gerrit-HasComments: Yes
openbsc[master]: 04.08: find a portable way to obtain the timezone offset
Patch Set 3: (1 comment) https://gerrit.osmocom.org/#/c/3128/3/openbsc/src/libmsc/gsm_04_08.c File openbsc/src/libmsc/gsm_04_08.c: Line 868: /* #warning find a portable way to obtain the timezone offset I think you can safely remove the old warning. -- To view, visit https://gerrit.osmocom.org/3128 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I673f17af2550c9708c4771e4ea4eafbbfafbb824 Gerrit-PatchSet: 3 Gerrit-Project: openbsc Gerrit-Branch: master Gerrit-Owner: dexterGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Max Gerrit-HasComments: Yes
openbsc[master]: smpp: fix return cause
Patch Set 3: (1 comment) https://gerrit.osmocom.org/#/c/3126/3/openbsc/src/libmsc/smpp_smsc.c File openbsc/src/libmsc/smpp_smsc.c: Line 326: return (acl) ? 38 /* network out of order */ : 1 /* number unsassigned */; Can we use define instead of numbers in here? This would also eliminate the need for comments in here. -- To view, visit https://gerrit.osmocom.org/3126 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: If3241d50a78fa611981e55fef6ae4c72b0a2a167 Gerrit-PatchSet: 3 Gerrit-Project: openbsc Gerrit-Branch: master Gerrit-Owner: dexterGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Max Gerrit-HasComments: Yes
[PATCH] libosmocore[master]: Add release target to Makefile
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3130 to look at the new patch set (#4). Add release target to Makefile Add simple helper target to automate following release steps: * cleanup TODO-RELEASE * update debian/changelog * git commit and tag * git tag sign Note: it requires bumpversion package to be installed, debian/control is adjusted accordingly. The helper itself is installed to facilitate reuse by other libraries. N. B: you still have to manually adjust LIBVERSION in previous commit - see TODO-RELEASE header for details. Use it as follows: make REL=minor release The REL parameter defines which component of the version [1] to bump and can be any of { major, minor, patch }. [1] http://semver.org/ Change-Id: I790ceb958195b9f6cbabfe8c977dc30e2bd7414b Related: OS#1861 --- M Makefile.am M configure.ac M debian/control M debian/libosmocore-dev.install A osmo-release.mk 5 files changed, 32 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/30/3130/4 diff --git a/Makefile.am b/Makefile.am index b8de3ca..c94b5c0 100644 --- a/Makefile.am +++ b/Makefile.am @@ -15,6 +15,8 @@ EXTRA_DIST = git-version-gen .version README.md +@RELMAKE@ + if HAVE_DOXYGEN html_DATA = $(top_builddir)/doc/html.tar diff --git a/configure.ac b/configure.ac index 92544b6..641f852 100644 --- a/configure.ac +++ b/configure.ac @@ -11,6 +11,10 @@ dnl kernel style compile messages m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +dnl include release helper +RELMAKE='-include osmo-release.mk' +AC_SUBST([RELMAKE]) + dnl checks for programs AC_PROG_MAKE_SET AC_PROG_MKDIR_P diff --git a/debian/control b/debian/control index b19448e..e266173 100644 --- a/debian/control +++ b/debian/control @@ -281,6 +281,7 @@ Multi-Arch: same Section: libdevel Depends: libosmocore, + bumpversion, libtalloc-dev, ${misc:Depends} Description: Development headers for Open Source MObile COMmunications CORE library diff --git a/debian/libosmocore-dev.install b/debian/libosmocore-dev.install index 465f933..96094f6 100644 --- a/debian/libosmocore-dev.install +++ b/debian/libosmocore-dev.install @@ -3,3 +3,4 @@ usr/lib/*/lib*.so usr/lib/*/lib*.la usr/lib/*/pkgconfig/* +osmo-release.mk usr/include diff --git a/osmo-release.mk b/osmo-release.mk new file mode 100644 index 000..69c8102 --- /dev/null +++ b/osmo-release.mk @@ -0,0 +1,24 @@ +ifdef REL +NEW_VERSION := $(shell bumpversion --list --current-version $(VERSION) $(REL) --allow-dirty | awk -F '=' '{ print $$2 }') +LIBVERS := $(shell git grep -n LIBVERSION | grep '=' | grep am | grep -v LDFLAGS) +endif + +release: +ifeq ($(LIBVERS),) + @echo "Releasing non-library projects is not yet supported" +else + @echo "Releasing" $(VERSION) "->" $(NEW_VERSION)"..." + @echo "You should NOT be doing this unless you've read and understood following article:" + @echo "https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html#Updating-version-info; + @grep -v '#' TODO-RELEASE | sed 's/\t\+/:/g' | xargs -d'\n' -I entry dch -m -v $(NEW_VERSION) "entry" + @dch -r -m --distribution "unstable" "" + @grep '#' TODO-RELEASE > TODO-RELEASE.clean + @mv TODO-RELEASE.clean TODO-RELEASE + @git add -u + @bumpversion --current-version $(VERSION) $(REL) --tag --commit --tag-name $(NEW_VERSION) --allow-dirty + @git tag -s $(NEW_VERSION) -f -m "Release v$(NEW_VERSION)" + @echo "Release" $(NEW_VERSION) "prepared, tagged and signed." + @echo "Do NOT push the release commit if you have not adjusted LIBVERSION in preceeding commit!!!" + @echo "Are you sure the following versions are correct?" + @echo $(LIBVERS) +endif -- To view, visit https://gerrit.osmocom.org/3130 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I790ceb958195b9f6cbabfe8c977dc30e2bd7414b Gerrit-PatchSet: 4 Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Owner: MaxGerrit-Reviewer: Jenkins Builder
[PATCH] libosmocore[master]: Cleanup jenkins build scripts
Review at https://gerrit.osmocom.org/3132 Cleanup jenkins build scripts * reorder builds to avoid rm -rf invocation * avoid useless double autoreconf * move common parts into shared helper * move common build steps into separate function Change-Id: I24e500e132f5c8e8133d35548cb7b4e4552331d0 --- M contrib/jenkins-arm.sh M contrib/jenkins.sh A contrib/jenkins_common.sh 3 files changed, 29 insertions(+), 46 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/32/3132/1 diff --git a/contrib/jenkins-arm.sh b/contrib/jenkins-arm.sh index 510b0e9..507652f 100755 --- a/contrib/jenkins-arm.sh +++ b/contrib/jenkins-arm.sh @@ -1,33 +1,16 @@ #!/bin/sh -set -ex +. $(dirname "$0")/jenkins_common.sh -./contrib/verify_value_string_arrays_are_terminated.py $(find . -name "*.[hc]") - -autoreconf --install --force -./configure --enable-static \ - --prefix=/usr/local/arm-none-eabi \ - --host=arm-none-eabi \ - --enable-embedded \ - --disable-shared \ - CFLAGS="-Os -ffunction-sections -fdata-sections -nostartfiles -nodefaultlibs -Werror" - -$MAKE $PARALLEL_MAKE \ - || cat-testlogs.sh +build() { +$1 --enable-static --prefix=/usr/local/arm-none-eabi --host=arm-none-eabi --enable-embedded --disable-shared CFLAGS="-Os -ffunction-sections -fdata-sections -nostartfiles -nodefaultlibs -Werror" +$MAKE $PARALLEL_MAKE || cat-testlogs.sh +} # verify build in dir other than source tree -rm -rf * -git checkout . -autoreconf --install --force -mkdir builddir +mkdir -p builddir cd builddir +build ../configure -../configure --enable-static \ - --prefix=/usr/local/arm-none-eabi \ - --host=arm-none-eabi \ - --enable-embedded \ - --disable-shared \ - CFLAGS="-Os -ffunction-sections -fdata-sections -nostartfiles -nodefaultlibs -Werror" - -$MAKE $PARALLEL_MAKE \ - || cat-testlogs.sh +cd .. +build ./configure diff --git a/contrib/jenkins.sh b/contrib/jenkins.sh index 6a72840..4a26630 100755 --- a/contrib/jenkins.sh +++ b/contrib/jenkins.sh @@ -1,30 +1,23 @@ -#!/usr/bin/env bash +#!/bin/sh -set -ex +. $(dirname "$0")/jenkins_common.sh -./contrib/verify_value_string_arrays_are_terminated.py $(find . -name "*.[hc]") +ENABLE_SANITIZE="--enable-sanitize" if [ "x$label" = "xFreeBSD_amd64" ]; then ENABLE_SANITIZE="" -else -ENABLE_SANITIZE="--enable-sanitize" fi -autoreconf --install --force -./configure --enable-static $ENABLE_SANITIZE CFLAGS="-Werror" CPPFLAGS="-Werror" -$MAKE $PARALLEL_MAKE check \ - || cat-testlogs.sh -$MAKE distcheck \ - || cat-testlogs.sh +build() { +$1 --enable-static $2 CFLAGS="-Werror" CPPFLAGS="-Werror" +$MAKE $PARALLEL_MAKE check || cat-testlogs.sh +$MAKE distcheck || cat-testlogs.sh +} # verify build in dir other than source tree -rm -rf * -git checkout . -autoreconf --install --force -mkdir builddir +mkdir -p builddir cd builddir -../configure --enable-static CFLAGS="-Werror" CPPFLAGS="-Werror" -$MAKE $PARALLEL_MAKE check \ - || cat-testlogs.sh -$MAKE distcheck \ - || cat-testlogs.sh +build ../configure $ENABLE_SANITIZE + +cd .. +build ./configure $ENABLE_SANITIZE diff --git a/contrib/jenkins_common.sh b/contrib/jenkins_common.sh new file mode 100644 index 000..c7bc7f6 --- /dev/null +++ b/contrib/jenkins_common.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +set -ex + +./contrib/verify_value_string_arrays_are_terminated.py $(find . -name "*.[hc]") + +autoreconf --install --force -- To view, visit https://gerrit.osmocom.org/3132 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I24e500e132f5c8e8133d35548cb7b4e4552331d0 Gerrit-PatchSet: 1 Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Owner: Max
osmo-gsm-tester[master]: esme: run_method_expect_failure: Check failure in server res...
Patch Set 2: Don't review yet, I'll do further changes needed to implement store too. -- To view, visit https://gerrit.osmocom.org/3129 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ia2c0c325fee14143deca8310312fc530cd9ce92e Gerrit-PatchSet: 2 Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: Pau Espin Pedrol Gerrit-HasComments: No
[PATCH] libosmo-abis[master]: Use release helper from libosmocore
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3131 to look at the new patch set (#2). Use release helper from libosmocore Change-Id: Ifc88e5c942a8b430b2436d429c86560d82984a95 Related: OS#1861 --- M Makefile.am M configure.ac 2 files changed, 6 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-abis refs/changes/31/3131/2 diff --git a/Makefile.am b/Makefile.am index 9e24bef..a8774c4 100644 --- a/Makefile.am +++ b/Makefile.am @@ -13,3 +13,5 @@ echo $(VERSION) > $(distdir)/.tarball-version EXTRA_DIST = .version README.md + +@RELMAKE@ diff --git a/configure.ac b/configure.ac index 535d1c3..f2e90e3 100644 --- a/configure.ac +++ b/configure.ac @@ -11,6 +11,10 @@ dnl kernel style compile messages m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +dnl include release helper +RELMAKE='-include osmo-release.mk' +AC_SUBST([RELMAKE]) + dnl checks for programs AC_PROG_MAKE_SET AC_PROG_CC -- To view, visit https://gerrit.osmocom.org/3131 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: Ifc88e5c942a8b430b2436d429c86560d82984a95 Gerrit-PatchSet: 2 Gerrit-Project: libosmo-abis Gerrit-Branch: master Gerrit-Owner: MaxGerrit-Reviewer: Jenkins Builder
[PATCH] libosmocore[master]: Add release target to Makefile
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3130 to look at the new patch set (#3). Add release target to Makefile Add simple helper target to automate following release steps: * cleanup TODO-RELEASE * update debian/changelog * git commit and tag * git tag sign Note: it requires bumpversion package to be installed, debian/control is adjusted accordingly. The helper itself is installed to facilitate reuse by other libraries. N. B: you still have to manually adjust LIBVERSION in previous commit - see TODO-RELEASE header for details. Use it as follows: make REL=minor release The REL parameter defines which component of the version [1] to bump and can be any of { major, minor, patch }. [1] http://semver.org/ Change-Id: I790ceb958195b9f6cbabfe8c977dc30e2bd7414b Related: OS#1861 --- M Makefile.am M configure.ac M debian/control M debian/libosmocore-dev.install A osmo-release.mk 5 files changed, 33 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/30/3130/3 diff --git a/Makefile.am b/Makefile.am index b8de3ca..3a71e3a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -13,7 +13,9 @@ dist-hook: echo $(VERSION) > $(distdir)/.tarball-version -EXTRA_DIST = git-version-gen .version README.md +EXTRA_DIST = git-version-gen .version README.md osmo-release.mk + +@RELMAKE@ if HAVE_DOXYGEN diff --git a/configure.ac b/configure.ac index 92544b6..641f852 100644 --- a/configure.ac +++ b/configure.ac @@ -11,6 +11,10 @@ dnl kernel style compile messages m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +dnl include release helper +RELMAKE='-include osmo-release.mk' +AC_SUBST([RELMAKE]) + dnl checks for programs AC_PROG_MAKE_SET AC_PROG_MKDIR_P diff --git a/debian/control b/debian/control index b19448e..e266173 100644 --- a/debian/control +++ b/debian/control @@ -281,6 +281,7 @@ Multi-Arch: same Section: libdevel Depends: libosmocore, + bumpversion, libtalloc-dev, ${misc:Depends} Description: Development headers for Open Source MObile COMmunications CORE library diff --git a/debian/libosmocore-dev.install b/debian/libosmocore-dev.install index 465f933..96094f6 100644 --- a/debian/libosmocore-dev.install +++ b/debian/libosmocore-dev.install @@ -3,3 +3,4 @@ usr/lib/*/lib*.so usr/lib/*/lib*.la usr/lib/*/pkgconfig/* +osmo-release.mk usr/include diff --git a/osmo-release.mk b/osmo-release.mk new file mode 100644 index 000..69c8102 --- /dev/null +++ b/osmo-release.mk @@ -0,0 +1,24 @@ +ifdef REL +NEW_VERSION := $(shell bumpversion --list --current-version $(VERSION) $(REL) --allow-dirty | awk -F '=' '{ print $$2 }') +LIBVERS := $(shell git grep -n LIBVERSION | grep '=' | grep am | grep -v LDFLAGS) +endif + +release: +ifeq ($(LIBVERS),) + @echo "Releasing non-library projects is not yet supported" +else + @echo "Releasing" $(VERSION) "->" $(NEW_VERSION)"..." + @echo "You should NOT be doing this unless you've read and understood following article:" + @echo "https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html#Updating-version-info; + @grep -v '#' TODO-RELEASE | sed 's/\t\+/:/g' | xargs -d'\n' -I entry dch -m -v $(NEW_VERSION) "entry" + @dch -r -m --distribution "unstable" "" + @grep '#' TODO-RELEASE > TODO-RELEASE.clean + @mv TODO-RELEASE.clean TODO-RELEASE + @git add -u + @bumpversion --current-version $(VERSION) $(REL) --tag --commit --tag-name $(NEW_VERSION) --allow-dirty + @git tag -s $(NEW_VERSION) -f -m "Release v$(NEW_VERSION)" + @echo "Release" $(NEW_VERSION) "prepared, tagged and signed." + @echo "Do NOT push the release commit if you have not adjusted LIBVERSION in preceeding commit!!!" + @echo "Are you sure the following versions are correct?" + @echo $(LIBVERS) +endif -- To view, visit https://gerrit.osmocom.org/3130 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I790ceb958195b9f6cbabfe8c977dc30e2bd7414b Gerrit-PatchSet: 3 Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Owner: MaxGerrit-Reviewer: Jenkins Builder
[PATCH] libosmo-abis[master]: Use release helper from libosmocore
Review at https://gerrit.osmocom.org/3131 Use release helper from libosmocore Change-Id: Ifc88e5c942a8b430b2436d429c86560d82984a95 Related: OS#1861 --- M Makefile.am M configure.ac 2 files changed, 6 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-abis refs/changes/31/3131/1 diff --git a/Makefile.am b/Makefile.am index 9e24bef..a8774c4 100644 --- a/Makefile.am +++ b/Makefile.am @@ -13,3 +13,5 @@ echo $(VERSION) > $(distdir)/.tarball-version EXTRA_DIST = .version README.md + +@RELMAKE@ diff --git a/configure.ac b/configure.ac index 535d1c3..f612fe9 100644 --- a/configure.ac +++ b/configure.ac @@ -11,6 +11,10 @@ dnl kernel style compile messages m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +dnl include release helper +RELMAKE='include osmo-release.mk' +AC_SUBST([RELMAKE]) + dnl checks for programs AC_PROG_MAKE_SET AC_PROG_CC -- To view, visit https://gerrit.osmocom.org/3131 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ifc88e5c942a8b430b2436d429c86560d82984a95 Gerrit-PatchSet: 1 Gerrit-Project: libosmo-abis Gerrit-Branch: master Gerrit-Owner: Max
[PATCH] openbsc[master]: smpp: fix return cause
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3126 to look at the new patch set (#3). smpp: fix return cause Return cause 38 when default SMPP route is unavailable. This is better than cause 1. Change-Id: If3241d50a78fa611981e55fef6ae4c72b0a2a167 --- M openbsc/src/libmsc/gsm_04_11.c M openbsc/src/libmsc/smpp_openbsc.c M openbsc/src/libmsc/smpp_smsc.c M openbsc/src/libmsc/smpp_smsc.h 4 files changed, 14 insertions(+), 12 deletions(-) git pull ssh://gerrit.osmocom.org:29418/openbsc refs/changes/26/3126/3 diff --git a/openbsc/src/libmsc/gsm_04_11.c b/openbsc/src/libmsc/gsm_04_11.c index aa2030f..acf425a 100644 --- a/openbsc/src/libmsc/gsm_04_11.c +++ b/openbsc/src/libmsc/gsm_04_11.c @@ -294,6 +294,7 @@ if (smpp_first) { rc = smpp_try_deliver(gsms, conn, deferred); if (rc == GSM411_RP_CAUSE_MO_NUM_UNASSIGNED) + /* unknown subscriber, try local */ goto try_local; if (rc < 0) { LOGP(DLSMS, LOGL_ERROR, "%s: SMS delivery error: %d.", diff --git a/openbsc/src/libmsc/smpp_openbsc.c b/openbsc/src/libmsc/smpp_openbsc.c index f94968a..f7d1441 100644 --- a/openbsc/src/libmsc/smpp_openbsc.c +++ b/openbsc/src/libmsc/smpp_openbsc.c @@ -702,17 +702,18 @@ { struct osmo_esme *esme; struct osmo_smpp_addr dst; + int rc; memset(, 0, sizeof(dst)); dst.ton = sms->dst.ton; dst.npi = sms->dst.npi; memcpy(dst.addr, sms->dst.addr, sizeof(dst.addr)); - esme = smpp_route(g_smsc, ); - if (!esme) - return GSM411_RP_CAUSE_MO_NUM_UNASSIGNED; + rc = smpp_route(g_smsc, , ); + if (!rc) + rc = deliver_to_esme(esme, sms, conn, deferred); - return deliver_to_esme(esme, sms, conn, deferred); + return rc; } struct smsc *smsc_from_vty(struct vty *v) diff --git a/openbsc/src/libmsc/smpp_smsc.c b/openbsc/src/libmsc/smpp_smsc.c index 48a1192..812b661 100644 --- a/openbsc/src/libmsc/smpp_smsc.c +++ b/openbsc/src/libmsc/smpp_smsc.c @@ -270,8 +270,7 @@ } /*! \brief try to find a SMPP route (ESME) for given destination */ -struct osmo_esme * -smpp_route(const struct smsc *smsc, const struct osmo_smpp_addr *dest) +int smpp_route(const struct smsc *smsc, const struct osmo_smpp_addr *dest, struct osmo_esme **pesme) { struct osmo_smpp_route *r; struct osmo_smpp_acl *acl = NULL; @@ -314,15 +313,17 @@ struct osmo_esme *esme; DEBUGP(DSMPP, "ACL even has ESME, we can route to it!\n"); esme = acl->esme; - if (esme->bind_flags & ESME_BIND_RX) - return esme; - else + if (esme->bind_flags & ESME_BIND_RX) { + *pesme = esme; + return 0; + } else LOGP(DSMPP, LOGL_NOTICE, "[%s] is matching route, " "but not bound for Rx, discarding MO SMS\n", esme->system_id); } - return NULL; + *pesme = NULL; + return (acl) ? 38 /* network out of order */ : 1 /* number unsassigned */; } diff --git a/openbsc/src/libmsc/smpp_smsc.h b/openbsc/src/libmsc/smpp_smsc.h index d8e82e4..c9209ef 100644 --- a/openbsc/src/libmsc/smpp_smsc.h +++ b/openbsc/src/libmsc/smpp_smsc.h @@ -126,8 +126,7 @@ void smpp_esme_get(struct osmo_esme *esme); void smpp_esme_put(struct osmo_esme *esme); -struct osmo_esme * -smpp_route(const struct smsc *smsc, const struct osmo_smpp_addr *dest); +int smpp_route(const struct smsc *smsc, const struct osmo_smpp_addr *dest, struct osmo_esme **emse); struct osmo_smpp_acl *smpp_acl_alloc(struct smsc *smsc, const char *sys_id); struct osmo_smpp_acl *smpp_acl_by_system_id(struct smsc *smsc, -- To view, visit https://gerrit.osmocom.org/3126 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: If3241d50a78fa611981e55fef6ae4c72b0a2a167 Gerrit-PatchSet: 3 Gerrit-Project: openbsc Gerrit-Branch: master Gerrit-Owner: dexterGerrit-Reviewer: Jenkins Builder
[PATCH] libosmocore[master]: Add release target to Makefile
Review at https://gerrit.osmocom.org/3130 Add release target to Makefile Add simple helper target to automate following release steps: * cleanup TODO-RELEASE * update debian/changelog * git commit and tag * git tag sign Note: it requires bumpversion package to be installed. N. B: you still have to manually adjust LIBVERSION in previous commit - see TODO-RELEASE header for details. Use it as follows: make REL=minor release The REL parameter defines which component of the version [1] to bump and can be any of { major, minor, patch }. [1] http://semver.org/ Change-Id: I790ceb958195b9f6cbabfe8c977dc30e2bd7414b Related: OS#1861 --- M Makefile.am 1 file changed, 18 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/30/3130/1 diff --git a/Makefile.am b/Makefile.am index b8de3ca..bfd409a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -15,6 +15,24 @@ EXTRA_DIST = git-version-gen .version README.md +NEW_VERSION := $(shell bumpversion --list --current-version $(VERSION) $(REL) --allow-dirty | awk -F '=' '{ print $$2 }') + +release: + @echo "Releasing" $(VERSION) "->" $(NEW_VERSION)"..." + @echo "You should NOT be doing this unless you've read and understood following article:" + @echo "https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html#Updating-version-info; + @grep -v '#' TODO-RELEASE | sed 's/\t\+/:/g' | xargs -d'\n' -I entry dch -m -v $(NEW_VERSION) "entry" + @dch -r -m --distribution "unstable" "" + @grep '#' TODO-RELEASE > TODO-RELEASE.clean + @mv TODO-RELEASE.clean TODO-RELEASE + @git add -u + @bumpversion --current-version $(VERSION) $(REL) --tag --commit --tag-name $(NEW_VERSION) --allow-dirty + @git tag -s $(NEW_VERSION) -f -m "Release v$(NEW_VERSION)" + @echo "Release" $(NEW_VERSION) "prepared, tagged and signed." + @echo "Do NOT push the release commit if you have not adjusted LIBVERSION in preceeding commit!!!" + @echo "Are you sure the following versions are correct?" + @git grep -n LIBVERSION | grep '=' | grep am | grep -v LDFLAGS + if HAVE_DOXYGEN html_DATA = $(top_builddir)/doc/html.tar -- To view, visit https://gerrit.osmocom.org/3130 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I790ceb958195b9f6cbabfe8c977dc30e2bd7414b Gerrit-PatchSet: 1 Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Owner: Max
[PATCH] libosmo-sccp[master]: simple-client/server: be able to decide on which ss7 instanc...
Hello Neels Hofmeyr, Harald Welte, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3104 to look at the new patch set (#4). simple-client/server: be able to decide on which ss7 instance to bind osmo_sccp_simple_client() and osmo_sccp_simple_server() are binding on the ss7 instance with the id 1 by default. If the instance does not exist, it is created automatically. Allow choosing the ss7 instance by supplying the id number as function parameter. Add two new functions: osmo_sccp_simple_client_on_ss7_id() osmo_sccp_simple_server_on_ss7_id() Change-Id: I62e608253212415bddbb4c7dcf5d3b5e79c8d28e --- M include/osmocom/sigtran/osmo_ss7.h M src/sccp_user.c 2 files changed, 39 insertions(+), 8 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-sccp refs/changes/04/3104/4 diff --git a/include/osmocom/sigtran/osmo_ss7.h b/include/osmocom/sigtran/osmo_ss7.h index caf12f5..57a4e06 100644 --- a/include/osmocom/sigtran/osmo_ss7.h +++ b/include/osmocom/sigtran/osmo_ss7.h @@ -439,11 +439,22 @@ const char *local_ip, int remote_port, const char *remote_ip); struct osmo_sccp_instance * +osmo_sccp_simple_client_on_ss7_id(void *ctx, uint32_t ss7_id, const char *name, + uint32_t pc, enum osmo_ss7_asp_protocol prot, + int local_port, const char *local_ip, + int remote_port, const char *remote_ip); + +struct osmo_sccp_instance * osmo_sccp_simple_server(void *ctx, uint32_t pc, enum osmo_ss7_asp_protocol prot, int local_port, const char *local_ip); struct osmo_sccp_instance * +osmo_sccp_simple_server_on_ss7_id(void *ctx, uint32_t ss7_id, uint32_t pc, + enum osmo_ss7_asp_protocol prot, + int local_port, const char *local_ip); + +struct osmo_sccp_instance * osmo_sccp_simple_server_add_clnt(struct osmo_sccp_instance *inst, enum osmo_ss7_asp_protocol prot, const char *name, uint32_t pc, diff --git a/src/sccp_user.c b/src/sccp_user.c index 93b03f6..b21a756 100644 --- a/src/sccp_user.c +++ b/src/sccp_user.c @@ -236,9 +236,10 @@ ***/ struct osmo_sccp_instance * -osmo_sccp_simple_client(void *ctx, const char *name, uint32_t pc, - enum osmo_ss7_asp_protocol prot, int local_port, - const char *local_ip, int remote_port, const char *remote_ip) +osmo_sccp_simple_client_on_ss7_id(void *ctx, uint32_t ss7_id, const char *name, + uint32_t pc, enum osmo_ss7_asp_protocol prot, + int local_port, const char *local_ip, + int remote_port, const char *remote_ip) { struct osmo_ss7_instance *ss7; struct osmo_ss7_as *as; @@ -252,7 +253,7 @@ local_port = osmo_ss7_asp_protocol_port(prot); /* allocate + initialize SS7 instance */ - ss7 = osmo_ss7_instance_find_or_create(ctx, 1); + ss7 = osmo_ss7_instance_find_or_create(ctx, ss7_id); if (!ss7) { LOGP(DLSCCP, LOGL_ERROR, "Failed to find or create SS7 instance\n"); return NULL; @@ -309,14 +310,24 @@ return NULL; } +struct osmo_sccp_instance * +osmo_sccp_simple_client(void *ctx, const char *name, uint32_t pc, + enum osmo_ss7_asp_protocol prot, int local_port, + const char *local_ip, int remote_port, const char *remote_ip) +{ + return osmo_sccp_simple_client_on_ss7_id(ctx, 1, name, pc, prot, +local_port, local_ip, +remote_port, remote_ip); +} + /*** * Convenience function for SERVER ***/ struct osmo_sccp_instance * -osmo_sccp_simple_server(void *ctx, uint32_t pc, - enum osmo_ss7_asp_protocol prot, int local_port, - const char *local_ip) +osmo_sccp_simple_server_on_ss7_id(void *ctx, uint32_t ss7_id, uint32_t pc, + enum osmo_ss7_asp_protocol prot, + int local_port, const char *local_ip) { struct osmo_ss7_instance *ss7; struct osmo_xua_server *xs; @@ -325,7 +336,7 @@ local_port = osmo_ss7_asp_protocol_port(prot); /* allocate + initialize SS7 instance */ - ss7 = osmo_ss7_instance_find_or_create(ctx, 1); + ss7 = osmo_ss7_instance_find_or_create(ctx, ss7_id); if (!ss7) return NULL; ss7->cfg.primary_pc = pc; @@ -350,6 +361,15 @@ } struct
[PATCH] osmo-gsm-tester[master]: esme: run_method_expect_failure: Check failure in server res...
Review at https://gerrit.osmocom.org/3129 esme: run_method_expect_failure: Check failure in server response We can now enable the esme_ms_sms test part which asserts that sending an SMS to an msisdn with unknown destination triggers an error. Change-Id: Ia2c0c325fee14143deca8310312fc530cd9ce92e --- M src/osmo_gsm_tester/esme.py M suites/smpp/esme_ms_sms.py 2 files changed, 17 insertions(+), 5 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/29/3129/1 diff --git a/src/osmo_gsm_tester/esme.py b/src/osmo_gsm_tester/esme.py index f92863d..5d3bf37 100644 --- a/src/osmo_gsm_tester/esme.py +++ b/src/osmo_gsm_tester/esme.py @@ -108,14 +108,26 @@ self.client.disconnect() self.connected = False -def run_method_expect_failure(self, errcode, method, *args): +# Used in 'run_method_expect_failure', defined here because lambda functions cannot contain assigments: +def trigger_message_sent(self): +self.message_sent = True + +def run_method_expect_failure(self, errcode, method, *args, check_smsc_resp=False): +old_func = self.client.message_sent_handler try: method(*args) +if check_smsc_resp: # failure is contained in SMS response to our query, wait for it +self.message_sent = False +self.client.set_message_sent_handler(self.trigger_message_sent) +event_loop.wait(self, lambda: self.message_sent == True, timeout=10) #it should not succeed, raise an exception: raise log.Error('SMPP Failure: %s should have failed with SMPP error %d (%s) but succeeded.' % (method, errcode, smpplib.consts.DESCRIPTIONS[errcode])) except smpplib.exceptions.PDUError as e: if e.args[1] != errcode: raise e +self.dbg('Expected failure triggered: %d' % errcode) +finally: +self.client.set_message_sent_handler(old_func) def sms_send(self, sms_obj): parts, encoding_flag, msg_type_flag = smpplib.gsm.make_parts(str(sms_obj)) diff --git a/suites/smpp/esme_ms_sms.py b/suites/smpp/esme_ms_sms.py index bc9d7d4..b6e7868 100755 --- a/suites/smpp/esme_ms_sms.py +++ b/suites/smpp/esme_ms_sms.py @@ -41,9 +41,9 @@ # FIXME: This test is not failing with error but succeeds, need to check why: (forward vs store policy?) -# wrong_msisdn = ms.msisdn + esme.msisdn -# print('sending third sms (with wrong msisdn %s)' % wrong_msisdn) -# msg = Sms(esme.msisdn, wrong_msisdn, 'smpp message with wrong dest') -# esme.run_method_expect_failure(SMPP_ESME_RINVDSTADR, esme.sms_send, msg) +wrong_msisdn = ms.msisdn + esme.msisdn +print('sending third sms (with wrong msisdn %s)' % wrong_msisdn) +msg = Sms(esme.msisdn, wrong_msisdn, 'smpp message with wrong dest') +esme.run_method_expect_failure(SMPP_ESME_RINVDSTADR, esme.sms_send, msg, check_smsc_resp=True) esme.disconnect() -- To view, visit https://gerrit.osmocom.org/3129 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia2c0c325fee14143deca8310312fc530cd9ce92e Gerrit-PatchSet: 1 Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol
[MERGED] osmo-gsm-tester[master]: default-suites: Add smpp
Pau Espin Pedrol has submitted this change and it was merged. Change subject: default-suites: Add smpp .. default-suites: Add smpp No need to run it for several BTS as the focus here is testing the core network and interoperation with different BTS is already tested with the sms suite. This way we avoid lossing extra time running the default suite set. Change-Id: Ie6458801ec1ecce63e08617d1e449047dc496e16 --- M example/default-suites.conf 1 file changed, 2 insertions(+), 0 deletions(-) Approvals: Neels Hofmeyr: Looks good to me, approved Jenkins Builder: Verified diff --git a/example/default-suites.conf b/example/default-suites.conf index 50cbec2..eba7dea 100644 --- a/example/default-suites.conf +++ b/example/default-suites.conf @@ -2,3 +2,5 @@ - aoip_sms:sysmo - sms:trx - aoip_sms:trx +- smpp +- aoip_smpp -- To view, visit https://gerrit.osmocom.org/3122 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: Ie6458801ec1ecce63e08617d1e449047dc496e16 Gerrit-PatchSet: 3 Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: Pau Espin Pedrol
osmo-gsm-tester[master]: default-suites: Add smpp
Patch Set 2: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/3122 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ie6458801ec1ecce63e08617d1e449047dc496e16 Gerrit-PatchSet: 2 Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-HasComments: No
[PATCH] openbsc[master]: smpp: fix return cause
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3126 to look at the new patch set (#2). smpp: fix return cause Return cause 38 when default SMPP route is unavailable. This is better than cause 1. Change-Id: If3241d50a78fa611981e55fef6ae4c72b0a2a167 --- M openbsc/src/libmsc/gsm_04_11.c M openbsc/src/libmsc/smpp_openbsc.c M openbsc/src/libmsc/smpp_smsc.c M openbsc/src/libmsc/smpp_smsc.h 4 files changed, 13 insertions(+), 12 deletions(-) git pull ssh://gerrit.osmocom.org:29418/openbsc refs/changes/26/3126/2 diff --git a/openbsc/src/libmsc/gsm_04_11.c b/openbsc/src/libmsc/gsm_04_11.c index aa2030f..acf425a 100644 --- a/openbsc/src/libmsc/gsm_04_11.c +++ b/openbsc/src/libmsc/gsm_04_11.c @@ -294,6 +294,7 @@ if (smpp_first) { rc = smpp_try_deliver(gsms, conn, deferred); if (rc == GSM411_RP_CAUSE_MO_NUM_UNASSIGNED) + /* unknown subscriber, try local */ goto try_local; if (rc < 0) { LOGP(DLSMS, LOGL_ERROR, "%s: SMS delivery error: %d.", diff --git a/openbsc/src/libmsc/smpp_openbsc.c b/openbsc/src/libmsc/smpp_openbsc.c index f94968a..fd26c63 100644 --- a/openbsc/src/libmsc/smpp_openbsc.c +++ b/openbsc/src/libmsc/smpp_openbsc.c @@ -708,11 +708,11 @@ dst.npi = sms->dst.npi; memcpy(dst.addr, sms->dst.addr, sizeof(dst.addr)); - esme = smpp_route(g_smsc, ); - if (!esme) - return GSM411_RP_CAUSE_MO_NUM_UNASSIGNED; + rc = smpp_route(g_smsc, , ); + if (!rc) + rc = deliver_to_esme(esme, sms, conn, deferred); - return deliver_to_esme(esme, sms, conn, deferred); + return rc; } struct smsc *smsc_from_vty(struct vty *v) diff --git a/openbsc/src/libmsc/smpp_smsc.c b/openbsc/src/libmsc/smpp_smsc.c index 48a1192..812b661 100644 --- a/openbsc/src/libmsc/smpp_smsc.c +++ b/openbsc/src/libmsc/smpp_smsc.c @@ -270,8 +270,7 @@ } /*! \brief try to find a SMPP route (ESME) for given destination */ -struct osmo_esme * -smpp_route(const struct smsc *smsc, const struct osmo_smpp_addr *dest) +int smpp_route(const struct smsc *smsc, const struct osmo_smpp_addr *dest, struct osmo_esme **pesme) { struct osmo_smpp_route *r; struct osmo_smpp_acl *acl = NULL; @@ -314,15 +313,17 @@ struct osmo_esme *esme; DEBUGP(DSMPP, "ACL even has ESME, we can route to it!\n"); esme = acl->esme; - if (esme->bind_flags & ESME_BIND_RX) - return esme; - else + if (esme->bind_flags & ESME_BIND_RX) { + *pesme = esme; + return 0; + } else LOGP(DSMPP, LOGL_NOTICE, "[%s] is matching route, " "but not bound for Rx, discarding MO SMS\n", esme->system_id); } - return NULL; + *pesme = NULL; + return (acl) ? 38 /* network out of order */ : 1 /* number unsassigned */; } diff --git a/openbsc/src/libmsc/smpp_smsc.h b/openbsc/src/libmsc/smpp_smsc.h index d8e82e4..c9209ef 100644 --- a/openbsc/src/libmsc/smpp_smsc.h +++ b/openbsc/src/libmsc/smpp_smsc.h @@ -126,8 +126,7 @@ void smpp_esme_get(struct osmo_esme *esme); void smpp_esme_put(struct osmo_esme *esme); -struct osmo_esme * -smpp_route(const struct smsc *smsc, const struct osmo_smpp_addr *dest); +int smpp_route(const struct smsc *smsc, const struct osmo_smpp_addr *dest, struct osmo_esme **emse); struct osmo_smpp_acl *smpp_acl_alloc(struct smsc *smsc, const char *sys_id); struct osmo_smpp_acl *smpp_acl_by_system_id(struct smsc *smsc, -- To view, visit https://gerrit.osmocom.org/3126 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: If3241d50a78fa611981e55fef6ae4c72b0a2a167 Gerrit-PatchSet: 2 Gerrit-Project: openbsc Gerrit-Branch: master Gerrit-Owner: dexterGerrit-Reviewer: Jenkins Builder
[MERGED] osmo-gsm-manuals[master]: smpp.adoc: describe VTY cmd 'local-tcp-ip' instead of 'local...
Neels Hofmeyr has submitted this change and it was merged. Change subject: smpp.adoc: describe VTY cmd 'local-tcp-ip' instead of 'local-tcp-port' .. smpp.adoc: describe VTY cmd 'local-tcp-ip' instead of 'local-tcp-port' Change-Id: I594b89094413758146bb25f5262902e263f8f3d1 --- M OsmoNITB/chapters/smpp.adoc 1 file changed, 5 insertions(+), 4 deletions(-) Approvals: Neels Hofmeyr: Looks good to me, approved Jenkins Builder: Verified diff --git a/OsmoNITB/chapters/smpp.adoc b/OsmoNITB/chapters/smpp.adoc index 91f8c07..eacbb80 100644 --- a/OsmoNITB/chapters/smpp.adoc +++ b/OsmoNITB/chapters/smpp.adoc @@ -22,15 +22,16 @@ There is a `smpp` vty node at the top level of the OsmoNITB -configuration. Under this node, the global SMPP configuration is +configuration. Under this node, the global SMPP configuration is performed. -Use the `local-tcp-port` command to define the TCP port at which the +Use the `local-tcp-ip` command to define the TCP IP and port at which the OsmoNITB internal SMSC should listen for incoming SMPP connections. The -default port assigned to SMPP is 2775. +default behaviour is to listen on all IPs (0.0.0.0), and the default port +assigned to SMPP is 2775. -Use the `system-id` command to define the System ID of the SMSC. +Use the `system-id` command to define the System ID of the SMSC. Use the `policy` parameter to define whether only explicitly configured ESMEs are permitted to access the SMSC (`closed`), or whether any -- To view, visit https://gerrit.osmocom.org/3124 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: I594b89094413758146bb25f5262902e263f8f3d1 Gerrit-PatchSet: 3 Gerrit-Project: osmo-gsm-manuals Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr
[PATCH] osmo-gsm-manuals[master]: smpp.adoc: describe VTY cmd 'local-tcp-ip' instead of 'local...
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3124 to look at the new patch set (#2). smpp.adoc: describe VTY cmd 'local-tcp-ip' instead of 'local-tcp-port' Change-Id: I594b89094413758146bb25f5262902e263f8f3d1 --- M OsmoNITB/chapters/smpp.adoc 1 file changed, 5 insertions(+), 4 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-manuals refs/changes/24/3124/2 diff --git a/OsmoNITB/chapters/smpp.adoc b/OsmoNITB/chapters/smpp.adoc index 91f8c07..eacbb80 100644 --- a/OsmoNITB/chapters/smpp.adoc +++ b/OsmoNITB/chapters/smpp.adoc @@ -22,15 +22,16 @@ There is a `smpp` vty node at the top level of the OsmoNITB -configuration. Under this node, the global SMPP configuration is +configuration. Under this node, the global SMPP configuration is performed. -Use the `local-tcp-port` command to define the TCP port at which the +Use the `local-tcp-ip` command to define the TCP IP and port at which the OsmoNITB internal SMSC should listen for incoming SMPP connections. The -default port assigned to SMPP is 2775. +default behaviour is to listen on all IPs (0.0.0.0), and the default port +assigned to SMPP is 2775. -Use the `system-id` command to define the System ID of the SMSC. +Use the `system-id` command to define the System ID of the SMSC. Use the `policy` parameter to define whether only explicitly configured ESMEs are permitted to access the SMSC (`closed`), or whether any -- To view, visit https://gerrit.osmocom.org/3124 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I594b89094413758146bb25f5262902e263f8f3d1 Gerrit-PatchSet: 2 Gerrit-Project: osmo-gsm-manuals Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder
osmo-gsm-manuals[master]: smpp.adoc: describe VTY cmd 'local-tcp-ip' instead of 'local...
Patch Set 2: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/3124 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I594b89094413758146bb25f5262902e263f8f3d1 Gerrit-PatchSet: 2 Gerrit-Project: osmo-gsm-manuals Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-HasComments: No
osmo-gsm-tester[master]: contrib: Fix removal of doc directories
Patch Set 1: Code-Review+2 argh! there's a patch I failed to test. Thanks! -- To view, visit https://gerrit.osmocom.org/3121 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ida8941525db2d6a80539ffda29fb4fa74dbb1e16 Gerrit-PatchSet: 1 Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-HasComments: No
osmo-iuh[master]: migrate osmo-hnbgw to libosmo-sigtran's SCCP/M3UA
Patch Set 2: Code-Review+2 In the new patch set, only the jenkins.sh script is modified to build libosmo-sccp master instead of a legacy branch. Hence re-adding Harald's +2. -- To view, visit https://gerrit.osmocom.org/3109 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I8ac15fa2fd25bedb26297177e416976a5389b573 Gerrit-PatchSet: 2 Gerrit-Project: osmo-iuh Gerrit-Branch: master Gerrit-Owner: Neels HofmeyrGerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-HasComments: No
[PATCH] osmo-iuh[master]: migrate osmo-hnbgw to libosmo-sigtran's SCCP/M3UA
Hello Harald Welte, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3109 to look at the new patch set (#2). migrate osmo-hnbgw to libosmo-sigtran's SCCP/M3UA libosmo-sigtran now has a "proper" SCCP/M3UA stack, so we can make our hnb-gw 3GPP compliant by switching from the old SUA code to the new universal SCCP user API with support for (currently) M3UA and SUA. Main changes: Use one cn_link to STP: We will connect to the core network using an (Osmo)STP instance that routes to MSC and SGSN, so we want one SCCP link instead of two. The only difference between IuCS and IuPS is a different remote osmo_sccp_addr. This has various effects through the messaging code; the patch is a bit larger than I would like, but it is hard to separate out truly independent smaller changes. CS or PS domain was previously flagged in the separate cn_link, as ctx pointer for two separate sccp_sap_up()s. Now there's just one such ctx, so determine is_ps from the RANAP Domain Indicator, or from the conn's hnbgw_context_map: - Add is_ps to context_map_alloc_by_hnb(). - To find a matching context, the RUA ID alone is no longer sufficient, also match is_ps (possible optimization todo: separate lists). We would send separate CS or PS Reset messages based on the cn_link, instead send both CS and PS Reset at the same time for the single cn_link. This could be adjusted to detect presence of MSC or SGSN instead. Pending: adjust the VTY config to reflect that there is only one remote address. Place a TODO comment for that. Smaller changes: rua_to_scu(): populate called and calling addresses for N_CONNECT and N_UNITDATA. Remove DSUA. Don't build dummy_cn, which is still implemented on SUA. Mark todo to maybe re-include it based on M3UA later. In hnbgw_cnlink, place sccp related items in a separate sub-struct. Do not keep an llist of cn_links, just have the one. Remove iteration and list management. Change jenkins script to build libosmo-sccp master. Patch-by: hwelte, nhofmeyr Change-Id: I8ac15fa2fd25bedb26297177e416976a5389b573 --- M contrib/jenkins.sh M include/osmocom/iuh/context_map.h M include/osmocom/iuh/hnbgw.h M include/osmocom/iuh/hnbgw_cn.h M src/context_map.c M src/hnbgw.c M src/hnbgw_cn.c M src/hnbgw_rua.c M src/tests/Makefile.am M src/tests/test_common.c 10 files changed, 133 insertions(+), 134 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-iuh refs/changes/09/3109/2 diff --git a/contrib/jenkins.sh b/contrib/jenkins.sh index bf2c7cb..b500e1c 100755 --- a/contrib/jenkins.sh +++ b/contrib/jenkins.sh @@ -19,7 +19,7 @@ osmo-build-dep.sh libosmo-abis osmo-build-dep.sh libosmo-netif -osmo-build-dep.sh libosmo-sccp sysmocom/iu +osmo-build-dep.sh libosmo-sccp osmo-build-dep.sh libasn1c # the asn1c binary is used by the 'regen' target below diff --git a/include/osmocom/iuh/context_map.h b/include/osmocom/iuh/context_map.h index c1a4495..8d957d6 100644 --- a/include/osmocom/iuh/context_map.h +++ b/include/osmocom/iuh/context_map.h @@ -24,6 +24,8 @@ struct hnbgw_cnlink *cn_link; /* RUA contxt ID */ uint32_t rua_ctx_id; + /* False for CS, true for PS */ + bool is_ps; /* SCCP User SAP connection ID */ uint32_t scu_conn_id; @@ -33,6 +35,7 @@ struct hnbgw_context_map * context_map_alloc_by_hnb(struct hnb_context *hnb, uint32_t rua_ctx_id, +bool is_ps, struct hnbgw_cnlink *cn_if_new); struct hnbgw_context_map * diff --git a/include/osmocom/iuh/hnbgw.h b/include/osmocom/iuh/hnbgw.h index 4880d48..db22d97 100644 --- a/include/osmocom/iuh/hnbgw.h +++ b/include/osmocom/iuh/hnbgw.h @@ -5,6 +5,7 @@ #include #include #include +#include #define DEBUG #include @@ -13,15 +14,16 @@ enum { DMAIN, DHNBAP, - DSUA, DRUA, DRANAP, }; #define HNBGW_LOCAL_IP_DEFAULT "0.0.0.0" +/* TODO: CS and PS now both connect to OsmoSTP, i.e. that's always going to be the same address. Drop the + * duplicity. */ #define HNBGW_IUCS_REMOTE_IP_DEFAULT "127.0.0.1" -#define HNBGW_IUPS_REMOTE_IP_DEFAULT "127.0.0.2" +#define HNBGW_IUPS_REMOTE_IP_DEFAULT "127.0.0.1" /* 25.467 Section 7.1 */ #define IUH_DEFAULT_SCTP_PORT 29169 @@ -63,15 +65,11 @@ struct llist_head list; enum hnbgw_cnlink_state state; struct hnb_gw *gw; - /* are we a PS connection (1) or CS (0) */ - int is_ps; /* timer for re-transmitting the RANAP Reset */ struct osmo_timer_list T_RafC; /* reference to the SCCP User SAP by which we communicate */ - struct osmo_sccp_user *sua_user; - struct osmo_sccp_link *sua_link; - struct osmo_sccp_addr local_addr; - struct osmo_sccp_addr remote_addr; + struct osmo_sccp_instance *sccp; + struct osmo_sccp_user *sccp_user; uint32_t next_conn_id; /* linked list of hnbgw_context_map */ @@ -131,14 +129,17 @@
[PATCH] osmo-iuh[master]: cn unitdata: verify correct remote addr
Hello Harald Welte, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3113 to look at the new patch set (#2). cn unitdata: verify correct remote addr When receiving unitdata from the CN, verify that it is indeed coming from the remote address that matches our CS/PS domain settings. This patch came from an earlier stage where the is_ps out-parameter was actually used. While it currently isn't, it doesn't hurt to leave it there. Change-Id: I7190b4c3a05e8bac0eeffa1eab18c9e47429cb17 --- M src/hnbgw_cn.c 1 file changed, 28 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-iuh refs/changes/13/3113/2 diff --git a/src/hnbgw_cn.c b/src/hnbgw_cn.c index 8124ce5..e967260 100644 --- a/src/hnbgw_cn.c +++ b/src/hnbgw_cn.c @@ -240,6 +240,31 @@ return rc; } +static bool pc_and_ssn_match(const struct osmo_sccp_addr *a, const struct osmo_sccp_addr *b) +{ + return (a == b) + || ((a->pc == b->pc) + && (a->ssn == b->ssn)); +} + +static int classify_cn_remote_addr(const struct hnb_gw *gw, + const struct osmo_sccp_addr *cn_remote_addr, + bool *is_ps) +{ + if (pc_and_ssn_match(cn_remote_addr, >sccp.remote_addr_cs)) { + if (is_ps) + *is_ps = false; + return 0; + } + if (pc_and_ssn_match(cn_remote_addr, >sccp.remote_addr_ps)) { + if (is_ps) + *is_ps = true; + return 0; + } + LOGP(DMAIN, LOGL_ERROR, "Unexpected remote address, matches neither CS nor PS address: %s\n", +osmo_sccp_addr_dump(cn_remote_addr)); + return -1; +} static int handle_cn_unitdata(struct hnbgw_cnlink *cnlink, const struct osmo_scu_unitdata_param *param, @@ -251,6 +276,9 @@ return -1; } + if (classify_cn_remote_addr(cnlink->gw, >calling_addr, NULL) < 0) + return -1; + return handle_cn_ranap(cnlink, msgb_l2(oph->msg), msgb_l2len(oph->msg)); } -- To view, visit https://gerrit.osmocom.org/3113 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I7190b4c3a05e8bac0eeffa1eab18c9e47429cb17 Gerrit-PatchSet: 2 Gerrit-Project: osmo-iuh Gerrit-Branch: master Gerrit-Owner: Neels HofmeyrGerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder
[PATCH] openbsc[master]: 04.08: find a portable way to obtain the timezone offset
Review at https://gerrit.osmocom.org/3128 04.08: find a portable way to obtain the timezone offset Portable GMT offset calculation to display correct time on GSM. Change-Id: I673f17af2550c9708c4771e4ea4eafbbfafbb824 --- M openbsc/src/libmsc/gsm_04_08.c 1 file changed, 11 insertions(+), 3 deletions(-) git pull ssh://gerrit.osmocom.org:29418/openbsc refs/changes/28/3128/1 diff --git a/openbsc/src/libmsc/gsm_04_08.c b/openbsc/src/libmsc/gsm_04_08.c index 89108e4..f1b2a4b 100644 --- a/openbsc/src/libmsc/gsm_04_08.c +++ b/openbsc/src/libmsc/gsm_04_08.c @@ -861,12 +861,20 @@ else { /* Need to get GSM offset and convert into 15 min units */ /* This probably breaks if gmtoff returns a value not evenly divisible by 15? */ - local_time = localtime(_t); #ifdef HAVE_TM_GMTOFF_IN_TM + local_time = localtime(_t); tzunits = (local_time->tm_gmtoff/60)/15; #else -#warning find a portable way to obtain the timezone offset - tzunits = 0; + /* #warning find a portable way to obtain the timezone offset +* this should be portable */ + time_t utc; + double offsetFromUTC; + utc = mktime(gmt_time); + local_time = localtime(_t); + offsetFromUTC = difftime(cur_t, utc); + if (local_time->tm_isdst) + offsetFromUTC += 3600.0; + tzunits = ((int)offsetFromUTC) / 60 / 15; #endif if (tzunits < 0) { tzunits = tzunits/-1; -- To view, visit https://gerrit.osmocom.org/3128 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I673f17af2550c9708c4771e4ea4eafbbfafbb824 Gerrit-PatchSet: 1 Gerrit-Project: openbsc Gerrit-Branch: master Gerrit-Owner: dexter
[PATCH] openbsc[master]: transaction: reject calls from unidentified subscribers
Review at https://gerrit.osmocom.org/3127 transaction: reject calls from unidentified subscribers A valid subscriber is indespensible when allocating a new transaction. Return NULL if no subscriber is supplied. This will cause unidentified subscribers to be rejected. Change-Id: Ia8739b6e329ab02c0064270d02ad1d6ee245520d --- M openbsc/src/libmsc/transaction.c 1 file changed, 4 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/openbsc refs/changes/27/3127/1 diff --git a/openbsc/src/libmsc/transaction.c b/openbsc/src/libmsc/transaction.c index dba4bed..f9dc1a3 100644 --- a/openbsc/src/libmsc/transaction.c +++ b/openbsc/src/libmsc/transaction.c @@ -70,6 +70,10 @@ DEBUGP(DCC, "subscr=%p, net=%p\n", subscr, net); + /* a valid subscriber is indispensable */ + if (subscr == NULL) + return NULL; + trans = talloc_zero(tall_trans_ctx, struct gsm_trans); if (!trans) return NULL; -- To view, visit https://gerrit.osmocom.org/3127 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia8739b6e329ab02c0064270d02ad1d6ee245520d Gerrit-PatchSet: 1 Gerrit-Project: openbsc Gerrit-Branch: master Gerrit-Owner: dexter
[MERGED] osmo-iuh[master]: jenkins: build from libosmo-netif master
Neels Hofmeyr has submitted this change and it was merged. Change subject: jenkins: build from libosmo-netif master .. jenkins: build from libosmo-netif master After merge of the sysmocom/sctp branch to master, it was forgotten to change this build script to move along to master. Change-Id: I473d1361b99ff0ff8adba9326b0e2dfbc48a3aef --- M contrib/jenkins.sh 1 file changed, 1 insertion(+), 1 deletion(-) Approvals: Neels Hofmeyr: Looks good to me, approved Jenkins Builder: Verified diff --git a/contrib/jenkins.sh b/contrib/jenkins.sh index 06f170b..bf2c7cb 100755 --- a/contrib/jenkins.sh +++ b/contrib/jenkins.sh @@ -18,7 +18,7 @@ export LD_LIBRARY_PATH="$inst/lib" osmo-build-dep.sh libosmo-abis -osmo-build-dep.sh libosmo-netif sysmocom/sctp +osmo-build-dep.sh libosmo-netif osmo-build-dep.sh libosmo-sccp sysmocom/iu osmo-build-dep.sh libasn1c -- To view, visit https://gerrit.osmocom.org/3125 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: I473d1361b99ff0ff8adba9326b0e2dfbc48a3aef Gerrit-PatchSet: 1 Gerrit-Project: osmo-iuh Gerrit-Branch: master Gerrit-Owner: Neels HofmeyrGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr
osmo-iuh[master]: jenkins: build from libosmo-netif master
Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/3125 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I473d1361b99ff0ff8adba9326b0e2dfbc48a3aef Gerrit-PatchSet: 1 Gerrit-Project: osmo-iuh Gerrit-Branch: master Gerrit-Owner: Neels HofmeyrGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-HasComments: No
[PATCH] osmo-iuh[master]: jenkins: build from libosmo-netif master
Review at https://gerrit.osmocom.org/3125 jenkins: build from libosmo-netif master After merge of the sysmocom/sctp branch to master, it was forgotten to change this build script to move along to master. Change-Id: I473d1361b99ff0ff8adba9326b0e2dfbc48a3aef --- M contrib/jenkins.sh 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-iuh refs/changes/25/3125/1 diff --git a/contrib/jenkins.sh b/contrib/jenkins.sh index 06f170b..bf2c7cb 100755 --- a/contrib/jenkins.sh +++ b/contrib/jenkins.sh @@ -18,7 +18,7 @@ export LD_LIBRARY_PATH="$inst/lib" osmo-build-dep.sh libosmo-abis -osmo-build-dep.sh libosmo-netif sysmocom/sctp +osmo-build-dep.sh libosmo-netif osmo-build-dep.sh libosmo-sccp sysmocom/iu osmo-build-dep.sh libasn1c -- To view, visit https://gerrit.osmocom.org/3125 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I473d1361b99ff0ff8adba9326b0e2dfbc48a3aef Gerrit-PatchSet: 1 Gerrit-Project: osmo-iuh Gerrit-Branch: master Gerrit-Owner: Neels Hofmeyr
[PATCH] osmo-gsm-manuals[master]: smpp.adoc: Small improvements
Review at https://gerrit.osmocom.org/3124 smpp.adoc: Small improvements Change-Id: I594b89094413758146bb25f5262902e263f8f3d1 --- M OsmoNITB/chapters/smpp.adoc 1 file changed, 5 insertions(+), 4 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-manuals refs/changes/24/3124/1 diff --git a/OsmoNITB/chapters/smpp.adoc b/OsmoNITB/chapters/smpp.adoc index 91f8c07..eacbb80 100644 --- a/OsmoNITB/chapters/smpp.adoc +++ b/OsmoNITB/chapters/smpp.adoc @@ -22,15 +22,16 @@ There is a `smpp` vty node at the top level of the OsmoNITB -configuration. Under this node, the global SMPP configuration is +configuration. Under this node, the global SMPP configuration is performed. -Use the `local-tcp-port` command to define the TCP port at which the +Use the `local-tcp-ip` command to define the TCP IP and port at which the OsmoNITB internal SMSC should listen for incoming SMPP connections. The -default port assigned to SMPP is 2775. +default behaviour is to listen on all IPs (0.0.0.0), and the default port +assigned to SMPP is 2775. -Use the `system-id` command to define the System ID of the SMSC. +Use the `system-id` command to define the System ID of the SMSC. Use the `policy` parameter to define whether only explicitly configured ESMEs are permitted to access the SMSC (`closed`), or whether any -- To view, visit https://gerrit.osmocom.org/3124 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I594b89094413758146bb25f5262902e263f8f3d1 Gerrit-PatchSet: 1 Gerrit-Project: osmo-gsm-manuals Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol
osmo-trx[master]: transceiver: Avoid sending clock indications when trx is not...
Patch Set 3: Code-Review+1 This patch appears to be the solution to making osmo-bts-trx stable in the osmo-gsm-tester. I would appreciate this being merged. -- To view, visit https://gerrit.osmocom.org/3120 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I91b81a4d7627cec39c1814a39ed4be306681b874 Gerrit-PatchSet: 3 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Reviewer: Tom Tsou Gerrit-HasComments: No
[PATCH] osmo-gsm-tester[master]: default-suites: Add smpp
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3122 to look at the new patch set (#2). default-suites: Add smpp No need to run it for several BTS as the focus here is testing the core network and interoperation with different BTS is already tested with the sms suite. This way we avoid lossing extra time running the default suite set. Change-Id: Ie6458801ec1ecce63e08617d1e449047dc496e16 --- M example/default-suites.conf 1 file changed, 2 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/22/3122/2 diff --git a/example/default-suites.conf b/example/default-suites.conf index 50cbec2..eba7dea 100644 --- a/example/default-suites.conf +++ b/example/default-suites.conf @@ -2,3 +2,5 @@ - aoip_sms:sysmo - sms:trx - aoip_sms:trx +- smpp +- aoip_smpp -- To view, visit https://gerrit.osmocom.org/3122 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: Ie6458801ec1ecce63e08617d1e449047dc496e16 Gerrit-PatchSet: 2 Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr
[PATCH] osmo-bts[master]: sysmo: Remove non longer valid -p option from help
Review at https://gerrit.osmocom.org/3123 sysmo: Remove non longer valid -p option from help The dsp-trace-flags command line argument was removed in 9684099ae905e6e61cbc326035d0b37c480f6172 Change-Id: I8dbcdc7080ca3f7d7968aeef24422faa75d925fe --- M src/osmo-bts-sysmo/main.c 1 file changed, 0 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/23/3123/1 diff --git a/src/osmo-bts-sysmo/main.c b/src/osmo-bts-sysmo/main.c index a8b7b50..ce12d63 100644 --- a/src/osmo-bts-sysmo/main.c +++ b/src/osmo-bts-sysmo/main.c @@ -120,7 +120,6 @@ void bts_model_print_help() { printf( - " -p --dsp-trace Set DSP trace flags\n" " -w --hw-versionPrint the targeted HW Version\n" " -M --pcu-directForce PCU to access message queue for " "PDCH dchannel directly\n" -- To view, visit https://gerrit.osmocom.org/3123 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I8dbcdc7080ca3f7d7968aeef24422faa75d925fe Gerrit-PatchSet: 1 Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol
[PATCH] osmo-gsm-tester[master]: default-suites: Add smpp
Review at https://gerrit.osmocom.org/3122 default-suites: Add smpp No need to run it for several BTS as the focus here is testing the core network and interoperation with different BTS is already tested with the sms suite. This way we avoid lossing extra time running the default suite set. Change-Id: Ie6458801ec1ecce63e08617d1e449047dc496e16 --- M example/default-suites.conf 1 file changed, 1 insertion(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/22/3122/1 diff --git a/example/default-suites.conf b/example/default-suites.conf index 50cbec2..4c2827b 100644 --- a/example/default-suites.conf +++ b/example/default-suites.conf @@ -2,3 +2,4 @@ - aoip_sms:sysmo - sms:trx - aoip_sms:trx +- smpp -- To view, visit https://gerrit.osmocom.org/3122 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ie6458801ec1ecce63e08617d1e449047dc496e16 Gerrit-PatchSet: 1 Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol
[PATCH] osmo-gsm-tester[master]: contrib: Fix removal of doc directories
Review at https://gerrit.osmocom.org/3121 contrib: Fix removal of doc directories The docs are actually not removed because the shell takes {libosmocore,libosmo-sccp} as a string literal if found inside quote marks, see [1] for more information. [1] https://unix.stackexchange.com/questions/67757/wildcards-inside-quotes Change-Id: Ida8941525db2d6a80539ffda29fb4fa74dbb1e16 --- M contrib/jenkins-build-common.sh 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/21/3121/1 diff --git a/contrib/jenkins-build-common.sh b/contrib/jenkins-build-common.sh index 895cd63..efc621a 100644 --- a/contrib/jenkins-build-common.sh +++ b/contrib/jenkins-build-common.sh @@ -141,7 +141,7 @@ create_bin_tgz() { # don't package documentation -- the libosmocore docs can be up to 16 Mb large, # a significant amount compared to the binaries - rm -rf "$prefix_real/share/doc/{libosmocore,libosmo-sccp}" || true + rm -rf "$prefix_real/share/doc/"{libosmocore,libosmo-sccp} || true # build the archive that is going to be copied to the tester cd "$prefix_real" -- To view, visit https://gerrit.osmocom.org/3121 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ida8941525db2d6a80539ffda29fb4fa74dbb1e16 Gerrit-PatchSet: 1 Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol
osmo-trx[master]: transceiver: Avoid sending clock indications when trx is not...
Patch Set 3: Yesterday evening I built osmo-trx used by osmo-gsm-tester with this patch enabled, and since then (built 1146) the osmo-gsm-tester with osmo-bts-trx seems a lot more stable: http://jenkins.osmocom.org/jenkins/view/osmo-gsm-tester/job/osmo-gsm-tester_run/ -- To view, visit https://gerrit.osmocom.org/3120 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I91b81a4d7627cec39c1814a39ed4be306681b874 Gerrit-PatchSet: 3 Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Owner: Pau Espin PedrolGerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-HasComments: No