This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "The OpenBSC GSM Base Station Controller (+MSC/HLR/SGSN)".
The branch, neels/gtphub has been updated
discards cb591d0e9175dad898de019612a68f9adfd25f4b (commit)
discards 88d06caa712a3fd40960c0d11d45373dc9341659 (commit)
discards 2d228573f2df28be5d185d8d93ec3b887f526eb7 (commit)
discards f0dc0f3bd9d702c59d46cd358ba9915377136cfc (commit)
discards ad51b759181064c87f26ed702c16d3edc3bc12ec (commit)
discards e6b56c49fd36757aa507bbbef868cdc98d2cd3ca (commit)
discards 5d2e92036d0bc6fbcab522e3eb3cb71cf62d80cc (commit)
discards 628c0c8f82673390e92cc5f532f7f1e0d368c26c (commit)
discards eb7b0a83b4555222215a0ec6155e0eecaadf3f24 (commit)
discards 1c31e9a0793c90c856f6537d31b8f20e5d93ff4b (commit)
discards e68fee7637ac953837adddb8c3428909a07ecfcb (commit)
discards b30bfedb11e10ea7f99a5e98d5b8274cb866baa8 (commit)
discards 5171ef9d2059625cf4d4c5775fe8e0c18ee5cd8b (commit)
discards 25a88f932df6ea89d33da5ffafc883f735462636 (commit)
discards 105b984f6af0907838529755efc6cf3ba3f5bad8 (commit)
discards bbef1e556ad3d2968ad2baa9f41b4e932b0ec556 (commit)
discards 8a9ebc14bfc2937d0402aa9f8cba82a323f4889a (commit)
discards bf6ac16ae3f906accb7b68ed9fffd343bcc1f148 (commit)
discards 5bdd48daaf45e824f3a683933617f41f65543d71 (commit)
discards 47493b5d258e66dcc8760f477aa6ecfb9dcbd442 (commit)
discards c0e13b2dbd36015f25bdeb8c07abb13ac4ef65ec (commit)
via 50a88f8eb4ad183bfc1f870a99c7f0f1f2022acb (commit)
via e201bf5778b073e7101a707435de0777a38b832f (commit)
via 192cf8b56ace2ea168153571f9c5eae53fd47365 (commit)
via 7f2d40ceb755943d52fcae8ddb12c09e2d0c623f (commit)
via c1e297a9f030429a075392b4888d26539a333dbf (commit)
via 444fe1be787fd291b5bc9c347303047e78089c35 (commit)
via 3bf4d4ddd97383a98d3da56f3b57e7aac2adcf54 (commit)
via da53b650561f5c2e81bd499657497713a7276725 (commit)
via 036874d27b458d4359a9132e3361e47b42935117 (commit)
via 3c4c17178f6d41ee83b441b9ce7d55d4e404b73d (commit)
via 89a83524dc4dcf73bedd8c98659bfd006a422a3b (commit)
via 5b3ed5a6cd4bc03b225e59910d647a5d4d21243a (commit)
via 5b231c38318754de6b9b16e91d0f1dc29290872d (commit)
via a0e2c562de54d87a48bdd059e18ef782f18c3cc8 (commit)
via d369720ec8bda4f2fb3ee0b1a719211d66df247a (commit)
via f397ca83bea6f15f194b522d9278695c7a27765f (commit)
via 402b117fe1ec63fe9c30eaa38850a477601799e9 (commit)
via fce0d1ee3b0717d18d081db9ceadbab2525441b8 (commit)
via 786d555de00d65e6c0b07008fe1cc8f593118c2e (commit)
via 42d114b846a4a1852f22ecfd56d8872cae83018a (commit)
via 03203415845cd646c748983f8ab49ecb8ca0581a (commit)
via fa74d6dd746e65166d4f7d62d7c6ff698bec2900 (commit)
via 6de6ea937eae341577dedb93d95bd9ded7fd440f (commit)
This update added new revisions after undoing existing revisions. That is
to say, the old revision is not a strict subset of the new revision. This
situation occurs when you --force push a change and generate a repository
containing something like this:
* -- * -- B -- O -- O -- O (cb591d0e9175dad898de019612a68f9adfd25f4b)
\
N -- N -- N (50a88f8eb4ad183bfc1f870a99c7f0f1f2022acb)
When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://cgit.osmocom.org/openbsc/commit/?id=50a88f8eb4ad183bfc1f870a99c7f0f1…
commit 50a88f8eb4ad183bfc1f870a99c7f0f1f2022acb
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Thu Nov 26 22:19:22 2015 +0100
gtphub: use file for incremental restart counter.
Force passing a restart counter, by adding such arg to gtphub_start().
In gtphub_main.c, add -r,--restart-file <path> and next_restart_count() to
maintain the counter file.
While at it, tweak the cmdline help to unify the formatting.
http://cgit.osmocom.org/openbsc/commit/?id=e201bf5778b073e7101a707435de0777…
commit e201bf5778b073e7101a707435de0777a38b832f
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Thu Nov 26 05:20:18 2015 +0100
gtphub: complain about excess cmdline args.
http://cgit.osmocom.org/openbsc/commit/?id=192cf8b56ace2ea168153571f9c5eae5…
commit 192cf8b56ace2ea168153571f9c5eae53fd47365
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Thu Nov 26 03:33:29 2015 +0100
gtphub: track tunnels explicitly.
So far, gtphub worked perfectly by only tracking single TEIs ... for probably
most uses. But a Ctrl plane tunnel may have expired despite a still active
corresponding User plane tunnel. The User plane would continue to work
indefinitely, but if any Ctrl messages followed after more than six hours of
Ctrl silence, they would have been dropped due to an expired TEI mapping.
We want to
- combine expiry of a user TEI with its ctrl TEI. (done in this patch)
- upon delete PDP context, remove both user and ctrl TEI mappings. (future)
- when a peer indicates a restart counter bump, invalidate its tunnels.
(future)
To facilitate these, track tunnels, complete with both SGSN's and GGSN's
address, original and replaced TEIs, all for both user and ctrl plane, in a
single struct. A single expiry entry handles the entire tunnel, instead of
previously four separate expiries for each endpoint identifier.
Add the concept of a "side", being either GGSN or SGSN.
Track the originating side in the gtp_packet_desc. For clarity, explicitly
track the received header TEI in header_tei_rx, since set_tei() overwrites
header_tei to reflect the packet's replaced header TEI, and the originally
received header TEI still needs to be used for matching a Create PDP Context
Response up with its Request (and for logging).
Adjust the test suite to expect tunnel listing strings instead of TEI mappings,
with a bonus of making it a lot easier to grok and including the IP addresses.
Note: the current implementation is as slow as can possibly be, iterating all
the tunnels all the time. Optimizations are kept for a future commit, on
purpose.
BTW, the sequence number mapping/unmapping structures remain unchanged.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=7f2d40ceb755943d52fcae8ddb12c09e…
commit 7f2d40ceb755943d52fcae8ddb12c09e2d0c623f
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Wed Nov 25 16:50:19 2015 +0100
gtphub: fix filename mentioned in comment
http://cgit.osmocom.org/openbsc/commit/?id=c1e297a9f030429a075392b4888d2653…
commit c1e297a9f030429a075392b4888d26539a333dbf
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Wed Nov 25 16:45:59 2015 +0100
gtphub: cosmetic/prepare: rename expiry queues.
The expiry queues are already used for resolved GGSN addresses, and will
soon enlist tunnel structs. Hence the naming should be more general.
http://cgit.osmocom.org/openbsc/commit/?id=444fe1be787fd291b5bc9c347303047e…
commit 444fe1be787fd291b5bc9c347303047e78089c35
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Tue Nov 24 13:32:23 2015 +0100
gtphub: add assertion to ensure expiry ordering.
Make 100% sure the user adds expiring_items in chronological order by asserting
that a newly added expiry is >= the last expiry in the queue. Add llist_last()
to facilitate.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=3bf4d4ddd97383a98d3da56f3b57e7aa…
commit 3bf4d4ddd97383a98d3da56f3b57e7aac2adcf54
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Tue Nov 24 13:31:06 2015 +0100
gtphub: refresh TEI timeout when TEI is used.
Make sure a TEI mapping remains valid when it is in use (so far all mappings
would expire after 6 hours, in use or not).
Add regression test for this.
Note: this does not yet refresh a Ctrl TEI mapping when a corresponding User
TEI is used (todo?).
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=da53b650561f5c2e81bd499657497713…
commit da53b650561f5c2e81bd499657497713a7276725
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Tue Nov 24 13:30:38 2015 +0100
gtphub: cosmetic/prepare: add nr_map_refresh().
http://cgit.osmocom.org/openbsc/commit/?id=036874d27b458d4359a9132e3361e47b…
commit 036874d27b458d4359a9132e3361e47b42935117
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Tue Nov 24 13:27:13 2015 +0100
gtphub: move timestamp into packet struct.
Instead of passing the current time around in function arguments ('now'),
rather store the current time once upon decoding a GTP packet in the
gtp_packet_desc passed around anyway ('p->timestamp').
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=3c4c17178f6d41ee83b441b9ce7d55d4…
commit 3c4c17178f6d41ee83b441b9ce7d55d4e404b73d
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Tue Nov 24 13:23:44 2015 +0100
gtphub: cosmetic: fix an argument name.
http://cgit.osmocom.org/openbsc/commit/?id=89a83524dc4dcf73bedd8c98659bfd00…
commit 89a83524dc4dcf73bedd8c98659bfd006a422a3b
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Fri Nov 20 03:16:19 2015 +0100
gtphub: first vty show commands.
Start adding VTY commands to show rate counters / statistics / cache dumps.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=5b3ed5a6cd4bc03b225e59910d647a5d…
commit 5b3ed5a6cd4bc03b225e59910d647a5d4d21243a
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Fri Nov 20 01:28:40 2015 +0100
gtphub: add first rate counters
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=5b231c38318754de6b9b16e91d0f1dc2…
commit 5b231c38318754de6b9b16e91d0f1dc29290872d
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Fri Nov 20 01:27:22 2015 +0100
gtphub: cosmetic: clarify bind pointer naming.
Some gtphub_bind pointers point to an array of binds, some point directly at
instances. Make the distinction between the two more obvious by adding an
'_arr' suffix to the array ones.
Partly in preparation for upcoming rate counters.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=a0e2c562de54d87a48bdd059e18ef782…
commit a0e2c562de54d87a48bdd059e18ef782f18c3cc8
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Fri Nov 20 00:08:28 2015 +0100
gtphub: add explicit cleanup handles.
Clean up functionality is added for the test suite only, to be able to clean
out all allocations and test against memory leaks.
So far, it was sufficient to expire everything to free a gtphub. In preparation
for the upcoming rate counters, which will need to be freed explicitly, add
gtphub functions to clean up everything.
As added bonus, also close the sockets explicitly -- not really needed upon
program exit, neither by the test suite, but *if* we have a cleanup function,
it should clean up everything properly.
Closing the sockets is however kept separate, for the test suite.
gtphub_start() and gtphub_stop() are for normal use (published in gtphub.h),
and gtphub_init() and gtphub_free() are for the test suite, without sockets.
(gtphub_stop() will probably never be called by anyone, but its existence
completes the picture.)
In gtphub_test.c, have a function to clean up the testing gtphub struct. First,
expire everything by timeout, assert emptiness, then call the cleanup function.
Call from each test in the end.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=d369720ec8bda4f2fb3ee0b1a719211d…
commit d369720ec8bda4f2fb3ee0b1a719211d66df247a
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Fri Nov 20 00:04:41 2015 +0100
gtphub: ensure cleanup of peer addresses.
Upon calling gtphub_peer_del(), all addresses and ports should already have
expired (by force). Make sure the code heeds that with a so far missing
assertion.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=f397ca83bea6f15f194b522d9278695c…
commit f397ca83bea6f15f194b522d9278695c7a27765f
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Thu Nov 19 00:44:52 2015 +0100
gtphub: send gtphub's own restart counter, fix type.
So far, the sender's restart counter was copied through, which would break as
soon as more than one SGSN or more than one GGSN would talk to the same peer.
Also fix the restart counter data type (just one octet after all).
gtphub should also persist its restart counter and handle peers that have
rebooted, both of which is still not implemented.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=402b117fe1ec63fe9c30eaa38850a477…
commit 402b117fe1ec63fe9c30eaa38850a477601799e9
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Wed Nov 18 18:11:32 2015 +0100
gtphub: ares vty and init
From sgsn_vty.c, copy the cfg_grx_ggsn_cmd to add an ares server to the static
sgsn_instance.
This is sort of preliminary. As described in comments, the sgsn_ares functions
should actually be separated from the static sgsn structure. gtphub keeps such
an sgsn structure just for the sgsn_ares functions.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=fce0d1ee3b0717d18d081db9ceadbab2…
commit fce0d1ee3b0717d18d081db9ceadbab2525441b8
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Wed Nov 18 18:11:09 2015 +0100
gtphub: review some logging.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=786d555de00d65e6c0b07008fe1cc8f5…
commit 786d555de00d65e6c0b07008fe1cc8f593118c2e
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Wed Nov 18 17:53:00 2015 +0100
gtphub: cosmetic: rename a file.
gtphub_ext.c's initial purpose was to wrap a specific function. The file
then turned into everything related to DNS, which fits pretty well. Rename
to gtphub_ares.c.
Tweak the header comment to reflect the new file name.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=42d114b846a4a1852f22ecfd56d8872c…
commit 42d114b846a4a1852f22ecfd56d8872cae83018a
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Tue Nov 17 14:30:37 2015 +0100
gtphub: nr_map: add min,max and wrap.
Implement min/max bounds for nr_pool, adjust nr_pool_init() and current tests,
and create unit tests for nr_map wrapping.
Sequence numbers range from 0 to 65535, while TEIs range from 1 to 0xffffffff.
Both cause problems when the nr_pool surpasses the range: seq exit their valid
range, causing unmappings to fail, and a TEI would be mapped as zero (invalid).
Add a comment about TEI wrapping, and lose the comment about random TEIs (not
really important).
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=03203415845cd646c748983f8ab49ecb…
commit 03203415845cd646c748983f8ab49ecb8ca0581a
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Tue Nov 17 14:24:46 2015 +0100
gtphub: fix number map range for TEIs.
Use unsigned int for nr_map, just large enough to fit the TEI space.
Adjust log output formats and casts accordingly.
Fixes: TEIs are uint32_t, but the nr_map so far used int. This would cause TEIs
from 0x80000000 on to be handled and printed as a negative value.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=fa74d6dd746e65166d4f7d62d7c6ff69…
commit fa74d6dd746e65166d4f7d62d7c6ff698bec2900
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Wed Nov 18 17:09:22 2015 +0100
gtphub: add to debian build
By the example of osmo-sgsn, package osmo-gtphub for debian.
Sponsored-by: On-Waves ehi
http://cgit.osmocom.org/openbsc/commit/?id=6de6ea937eae341577dedb93d95bd9de…
commit 6de6ea937eae341577dedb93d95bd9ded7fd440f
Author: Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
Date: Thu Nov 26 22:20:50 2015 +0100
gtphub: remove obsolete comment.
-----------------------------------------------------------------------
Summary of changes:
openbsc/include/openbsc/gtphub.h | 3 +-
openbsc/src/gprs/gtphub.c | 131 ++++++++++++++-------------------------
openbsc/src/gprs/gtphub_main.c | 88 +++++++++++++++++++++++---
3 files changed, 128 insertions(+), 94 deletions(-)
hooks/post-receive
--
The OpenBSC GSM Base Station Controller (+MSC/HLR/SGSN)