Function initiates a test call to a given IMSI with a given paging time.
When connection to a mobile is up, it opens UDP socket, which could be used to send and recieve L3 frames to/from the mobile.
CommonLibs: Avoid direct syslog calls in ConfigurationTable
We instead introduce a 'log early' facility in Logger.h to accomplish
the same
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
I added similar code to the reporting functions, which did not exist when sylvain made this patch
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4629 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Added support for performance-reporting counters.
and
Patch 4588 in private:
For some reason, ReportingTest won't build on all systems. Since it is not part of the actuall application, I am commenting it out from the Makefile.am for now.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4627 19bc5d8c-e614-43d4-8b26-e1612bc8e597
The adaptive energy detection threshold does not scale relative
to signal level. In other words, the adjustment factor will be
the same whether the at 40% of signal level or 4%. If the receive
gain is reduced by a large amount, suppose 20 dB, the receiver
may take minutes to adjust to the new level.
When the receive gain is changed, reset the threshold back to
the initial level. This reduces issues of runtime gain adjustment
and prevents blocking bursts while the threhold level slowly
adjusts.
Signed-off-by: Thomas Tsou <tom@tsou.cc>
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4595 19bc5d8c-e614-43d4-8b26-e1612bc8e597
1)I did an experiment and compiled OpenBTS with clang yesterday, which
immediately highlighted two potential bugs in the Transceiver52 code.
I'm not sure they are indeed bugs and not the intended behavior, but
they look very much like that. The first one is below and the second
one is in the following mail.
GSM::Time() arguments are defined like #define USB_LATENCY_INTRVL
(10,0), which means that they are expanded into GSM::Time((10,0)).
This expression is a GSM::Time() with a single parameter where (10,0)
return value of the last argument, 0 in this case. I.e.
GSM::Time((10,0)) is equivalent to GSM::Time(0). I think this was not
the intention.
2) Printing \n after every complex number breaks output when you want to
print it in a single line, e.g. in many debug output.
I do not claim any copyright over this change, as it's very basic.
Looking forward to see it merged into mainline.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4515 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Check for transceiver with a "ping", not be waiting for the clock.
The fixes in the socket class seem to have solved this problem.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4514 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Add a few SIP message fixes. Add function that may be used for accepting out of order 200 and 487 messages.
Note that some of this was pushed earlier for compilation reasons
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4511 19bc5d8c-e614-43d4-8b26-e1612bc8e597
r4232: Major change in hos entries are removed from a TransactionTable.
>From now on, the only place were entries are actually removed is in TransactionTable::innerRemove.
Anywhere else, the remove methods just set a flag to tag the entry for later removal be innerRemove.
This allows us to survive situations where we try to touch transactions that have been removed already. We still log at the ERR level, but no more segfaults.
Updated all of the TransactionTable "find" methods to not return pointers to dead or removed tranactions.
Updated find-by-channel search to return the transaction entry with the highest transaction number, which fixes a bug that sometimes picked up the wrong transaction records during EA TCH assignment.
r4253: New exception class for when someone tries to use a "removed" transaction.
r4254: Updated copyright notice.
r4265: Unlock TransactionEntry::mLock while blocked on SIP message FIFOs in SIPEngine. This does wonders to reduce lock contention and make everything more snappy.
Use Mutex::tryLock in TransactionEntry::dead and if lock is held, assume that it is not dead. This also does a lot to reduce lock contention.
r4294: Change Um congestion response back to SIP 503.
r4295: When deleting an entry that has failed to respond to paging, send a SIP 480 response so the switch knows that transaction is dead.
r4412: Fixed bug that was causing SIPInterface to crash when the IMSI cannot be extracted from the To: header.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4497 19bc5d8c-e614-43d4-8b26-e1612bc8e597
This patch makes a step towards using a system-wide sqlite3 lib. It
moves sqlite3util.cpp/.h to CommonLibs and leaves only original
sqlite3 files in the sqlite3 dir of OpenBTS.
I do not claim any copyright over this change, as it's very basic.
Looking forward to see it merged into mainline.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4467 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Make multiple attempts at TCH channel assignment. (Yes, I saw this do something useful during one test.)
Log abmormal Disconnect and Release at NOTICE level.
Accessors for Cause element in L3 CC Release.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4350 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Don't go the ringing state until we really get the 180 response.
Log potetial re-INVITEs.
Simpler version of SIPEngine::sameINVITE just checks CSeq, on the assumption that CallID already matched when we searched the transaction table.
Faster and does not rely on string conversion.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4347 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Changes in SIP logging.
* Change "cannot parse" message to "out of place" and downgrade it.
* When we get a re-INVITE, log at the CRIT level.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4346 19bc5d8c-e614-43d4-8b26-e1612bc8e597
UHD accepts optional 'args' that can be used for device descriptions
such as IP address, device type, etc. Allow these to be passed in on
the transceiver command line as the third argument (number of supported
carriers is the second argument). This option benefits those who may
have multiple UHD devices attached to a single system.
This option is not yet supported by GSM core and requires starting the
transceiver independently on the command line. This option has no
effect when USRP1 is used.
Signed-off-by: Thomas Tsou <tom@tsou.cc>
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4315 19bc5d8c-e614-43d4-8b26-e1612bc8e597