Fork 0
Commit Graph

50 Commits

Author SHA1 Message Date
Alexander Chemeris a55a85eeba Use decoded text from original message in bounce and e-mail messages. 2011-06-21 15:30:44 -07:00
Alexander Chemeris ff7b341dae More readable bounce message. 2011-06-21 15:30:44 -07:00
Alexander Chemeris 53123da4f0 Maximum SMS length is 160 symbols in default alphabet. 2011-06-21 15:30:44 -07:00
Alexander Chemeris e61168a39c Avoid duplication of "IMSI" in SC.Register.Msg.
"IMSI" is also a prefix to phone's imsi-number, so when you output this error message, you get something like IMSIIMSI310260550682564.
2011-06-21 15:30:44 -07:00
Alexander Chemeris d498358b6e Set Log.Alarms.* values in smqueue config.
Logging system expect those valus to exist.
2011-06-21 15:30:44 -07:00
Alexander Chemeris 49b8ffd2d8 Make "from" address for bounce messages configurable. 2011-06-21 15:30:44 -07:00
Alexander Chemeris d54e4d82fd Move most of the SMS processing to smqueue (initial check-in).
Idea is to make OpenBTS as dumb as possible. It should forward all received SMS messages' RPDU to SMSC (smqueue) and vice versa. All actual message decoding and processing is to be done in smqueue.
2011-06-21 15:30:44 -07:00
Alexander Chemeris 57d292d962 Better documentation and error reporting for ThreadSemaphore. 2011-06-21 15:30:44 -07:00
Alexander Chemeris 971b6ba700 Implementation of Semaphore. 2011-06-21 15:30:44 -07:00
Alexander Chemeris 2ab4ca6648 Implemented "trans" CLI command to list all active transacions. 2011-06-21 15:30:29 -07:00
Alexander Huemer a2d4ed5c71 use AM_SILENT_RULES if available
M_SILENT_RULES improves readability of the messages emitted by make,
compiler warnings are easier to spot.

Available since automake-1.11, ignored on earlier versions.

Traditional verbose output can be forced by
"./configure --disable-silent-rules" or "make V=1"

Written-by: Alexander Huemer <>
Signed-off-by: Sylvain Munaut <>
2011-05-23 19:04:50 +02:00
Alexander Chemeris d15a9730fe Indicate no support for emergency calls in OpenBTS.config.example. 2011-02-08 14:39:21 +03:00
Alexander Chemeris 3fa2aa19cb Transceiver52M: Do not delete 'trx' on exit.
This should make it slightly less frequent to segfault on exit.
Actually we should shutdown all our threads correctly, but that's a lot of work.

(cherry picked from commit 7cd65d3e5a717e0c224477cacfe932cfd7a45b8f)
2010-12-21 18:29:57 +03:00
Alexander Chemeris 6423e707df common libs: Implemented ISLOGGING() macro to test whether given loglevel is going to be logged.
(cherry picked from commit d5e1c75147ef6d4bd6699c57250cc7b4def2e92b)
2010-12-21 18:29:23 +03:00
Alexander Chemeris a2ce7ae628 common libs: Implemented BitVector::unhex() which reads a hex string into a BitVector.
(cherry picked from commit d017dd20de029dbaa275335450728885f19ed01d)
2010-12-21 18:28:45 +03:00
Alexander Chemeris e2e267dcca common libs: Lower log level for "setting log path to " message.
I don't see real value of this message, while it's been printed to the screen like something very important.

(cherry picked from commit 3f3c9b2d2599a672f08624b3081c2c687cbba4d4)
2010-12-21 18:13:05 +03:00
Alexander Chemeris 80963d1ed9 common libs: Use gethostbyname2_r() instead of gethostbyname() if available.
gethostbyname() is not thread-safe. It's recommended to use gethostbyname_r() or gethostbyname2_r() instead.

(cherry picked from commit f27e9581cdb6837f83d0aab467f0e5f83e814e7b)
2010-12-21 18:11:14 +03:00
Alexander Chemeris 422848f5c1 control: Save IMEI in TMSI table for informational purposes.
So yes, now you should be able to identify all those annoying iPhones.

(cherry picked from commit e09c0b87d2ecbb5df713c020b814e3a8f371a9d4)
2010-12-21 18:09:31 +03:00
Alexander Chemeris c5e8a2337d sip: Set display name for To field in a SIP MESSAGE.
(cherry picked from commit 82d2d87f3f726976d9003829517a6cce395543ee)
2010-12-21 18:07:36 +03:00
Alexander Chemeris 25cef9ef96 control: Use std::string in TransactionEntry to ctore messaging payload.
Originally there was a fixed-size char array, which didn't allow to work with long hex strings.

(cherry picked from commit fdc6fc85f9f431438ef7279975c2f7c230cb4aa5)
2010-12-21 18:06:31 +03:00
Alexander Chemeris c39af79c75 smqueue: Documentation fixes for sm_state enumeration in smqueue.
(cherry picked from commit 70dffa1fcfb497cb6f90c1f83bf5d34942d27c59)
2010-12-21 18:05:51 +03:00
Alexander Chemeris b854303428 gsm: Add 8-bit alphabet to enumeration of GSM alphabets.
(cherry picked from commit 6c2e5134808e66f525e7df3e250a3f7be5cfd31c)
2010-12-21 18:05:09 +03:00
Alexander Chemeris 9de3435b20 sip: More comments and minor code ordering in SIP::sip_message().
(cherry picked from commit e7d2a39129e86c9a844bdb0c282fdf489f2f4ee7)
2010-12-21 18:03:56 +03:00
Alexander Chemeris f92807c2bd smqueue: Fix compiler warning about char* and constant strings.
(cherry picked from commit d712b09cdd)
2010-12-21 18:01:56 +03:00
Alexander Chemeris 2c0be6d746 Transceiver: correctly exit if USRP is not found.
(cherry picked from commit 8880f019e8071eb7f43f3727ab5414f744aedc4b)
2010-12-21 17:52:18 +03:00
Alexander Chemeris 91d16c65b7 Transceiver52M: Fix wrong memcpy().
1) It should be memmove(), because source and destination regions may overlap.
2) Amount of moved memory was calculated incorrectly and was about 2x times more then really needed. We thus touched memory outside of the allocated array and may crash the program.

(cherry picked from commit fbed302055ebe77ca19b899c8bc307ca05b4a604)
2010-12-21 17:50:35 +03:00
Alexander Chemeris 889d45eb22 Better safety checks in TMSIRecord::load().
This also avoids "corrupt TMSI file" message on empty file.

(cherry picked from commit 8ce5b5ec29deb53a72c81139a1fd768db52f60aa)
2010-12-21 17:49:24 +03:00
Alexander Chemeris 0517600882 Zero file descriptors set before use.
(cherry picked from commit cc1e6635f58512ec1bc07f4a933d6535e2c75d7f)
2010-12-21 17:48:25 +03:00
Alexander Chemeris e8b244c306 Remove unused variable in BitVector::hex().
(cherry picked from commit 4ff6edb50ce90db31e66dba3f77e08259929f1ac)
2010-12-21 17:47:29 +03:00
Alexander Chemeris 955f6ca200 Move more code out of asserts.
This time I checked all occurrences of assert() and all others are ok, if I didn't miss anything

(cherry picked from commit 2afd3fd962eb89e08a73420542267191f459815f)
2010-12-21 17:45:55 +03:00
Alexander Chemeris 410d42eda0 Don't put real code into assert().
If you compile with optimization and NDEBUG is defined, then the whole assert() is replaced with ((void) 0) and your code is not executed at all.

Don't assert() on pthread_join() return value. If thread was not started yet, then pthread_join() will fail, but it's ok for us.

(cherry picked from commit d0b797e62c, 21a84dcec9cdf25657bba5c221aac9d4bb81d8b3, 8ed37a1f36e1b1266728647e715f95a28df3f900)
2010-12-21 17:42:09 +03:00
Alexander Chemeris f24e148432 Fix a bug with Timeval difference calculation on 64-bit Linux.
Subtracting uint32_t from uin32_t gives you uint32_t. And assigning result to a long doesn't make it a signed value, because on 64-bit Linux long is 64 bits.

(cherry picked from commit 82dd78d698)
2010-12-21 17:38:21 +03:00
Alexander Chemeris fc81223045 Fix a bunch of typos.
(cherry picked from commits 2da5a28a07, 6cddd36139. 7852c1e572abbc9fee2548a58e377cfbb3eff46d, f85d5b3f528ba19c598cbe77bad2566920bf9dd4, 0f8766a506f25118f732cca10fe44a1c9a0ace6a, 26adfe2d158e6a80d50b4e247c1539b5a07add9f)
2010-12-21 16:58:05 +03:00
Sylvain Munaut 647a207bde gsm: Remove obsolete PCAP stuff from gsmtap.h
Signed-off-by: Sylvain Munaut <>
2010-12-01 00:46:02 +01:00
Sylvain Munaut e6d5057d5d gsm: Update and enhance the GSM Tap functionality
* switch to the new format
* add uplink frame dump as well
* fill more fields than before (not fully complete yet tough)

Signed-off-by: Sylvain Munaut <>
2010-12-01 00:46:02 +01:00
Sylvain Munaut b6b3f6ace1 gsm: Add same ARFCN()/typeAndOffset() accessors to L1Decoder than L1Encoder
Signed-off-by: Sylvain Munaut <>
2010-12-01 00:00:18 +01:00
Sylvain Munaut 3c7ad29fa8 gsm: Save time of received frame for later use in XCCHL1Decoder
Signed-off-by: Sylvain Munaut <>
2010-12-01 00:00:18 +01:00
Sylvain Munaut 908bc39f5f gsm: Create more precise TypeAndOffset cste for BCCH/CCCH
Very useful to know in L1 what burst/encoder/fec are related to.

Signed-off-by: Sylvain Munaut <>
2010-12-01 00:00:18 +01:00
Sylvain Munaut a8834fde88 transceiver: Fix misusage of ~ in bitfields
Somehow it seems the author tought using ~ would set that bit to 0. But
it invert all bits and as such set all others to '1'.

Signed-off-by: Sylvain Munaut <>
2010-12-01 00:00:18 +01:00
Sylvain Munaut d82d8b9496 misc: Add a proper .gitignore file
Signed-off-by: Sylvain Munaut <>
2010-12-01 00:00:18 +01:00
Sylvain Munaut 1a861cad9b build: Fix Transceiver/ to use AM_CXXFLAGS instead of CXX_FLAGS
Signed-off-by: Sylvain Munaut <>
2010-12-01 00:00:18 +01:00
Sylvain Munaut 50006e364d build: Remove all files autogenerated by autoreconf
Best practice is to not include those in repositories but only
in tar.gz dist tarball.

autoreconf -i will regenerate them

Signed-off-by: Sylvain Munaut <>
2010-11-30 23:58:50 +01:00
Sylvain Munaut 5a969569c5 Tranceiver52M: Remove the Nieue hack
This hack accidentally leaked in the release code ... but it prevents
tuning for certain ARFCN and reduces TX power.

Signed-off-by: Sylvain Munaut <>
2010-08-09 09:55:25 +02:00
David A. Burgess 3a8fd4fac1 Another fix to the copyright notice header. 2010-07-16 17:09:09 -07:00
David A. Burgess fa179f74b7 Change license to AGPLv3. 2010-07-04 15:28:06 -07:00
David A. Burgess 9f1e320914 Fixed spelling errors in LEGAL. 2010-07-02 18:26:24 -07:00
David A. Burgess 5294b893b1 Added comment referencing the SMS spec. 2010-07-02 18:18:49 -07:00
David A. Burgess 35750c3d11 Fix parsing error for malformed mobile identity types. 2010-07-02 18:18:00 -07:00
David A. Burgess 98e0876b50 Added language for US gov't contractors and users
to clarify that the GPLv3 license applies to them
as well as anyone else.
2010-07-02 18:17:11 -07:00
David A. Burgess ecbaf97509 Initial import of OpenBTS 2.6 for a new public trunk. 2010-05-23 19:42:16 -07:00