| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The logging categories are registered by the applications, like
osmo-nitb, during startup. Thus, the VTY have to provide the logging
commands according to the logging categories that the application
has registered.
Before this patch, the VTY contained the logging categories
hardcoded. Thus, any change in the logging categories by the
application would not be shown by the VTY.
So far, this was not a problem because all applications used the
same logging categories. However, according to what Harald told
me, this may be a problem in the future.
This patch resolve the lack of integration between the logging
framework and the VTY by generating the VTY logging commands
from the logging categories registered.
Since this patch changes one function of the libosmocore API,
it follows another patch for the openbsc application to get in
sync with the new function layout.
I have reworked and renamed the functions:
* log_vty_category_string()
* log_vty_level_string()
to provide the new ones that generate the exact output that VTY
requires.
This patch does not release the memory allocated by
talloc_zero_size() to store the VTY strings for the commands
and the description. I found no exit function that can clean
up resources that were allocated.
|
|\ |
|
| |
| |
| |
| | |
This should put a useful syslog identity in place.
|
|/ |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
We can now configure logging to (multiple) files, stderr and syslog
from the vty command line in a persistent way (config file)
|
| |
|
|
|
|
| |
This will be required for mapping osmocore log levels to syslog priorities.
|
|
|
|
|
|
| |
It is possible that the queue is cleared after the select
and before the callback for writable is called. Check if
the list is not empty brefore taking an item out of it.
|
| |
|
| |
|
|
|
|
|
| |
This is something that we should generate dynamically from
the log_info as well. This is adding bits from the cellmgr_ng.
|
|
|
|
|
|
| |
(e.g. input2[] test sequence from testra/crc_test
decodes incorrectly to packed bits: 90 b0 3e 80 03 87 53 bd 6f 08,
this patch fixes it)
|
|
|
|
| |
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
| |
|
|
|
|
|
|
| |
Thanks to playya__ (Dr. Fred) on IRC for pointing this out
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
|
|
|
|
| |
This makes more sense in case you run BCS, SGSN and other components
on the same host. Having multiple telnet sessions with the same
prompt can otherwise be confusing.
|
|
|
|
|
|
| |
There should not be any u_int*_t types in this file, no need
to include this file. It is breaking compilation with the last
x86 build of GNU ARM for GCC 3.4.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This has two benefits:
- All people calling osmo_panic() will have the backtrace
- It makes the thing build in 'target' mode in osmocom-bb
And one downside:
- The osmo_panic handler is now in the backtrace
(I can live with that :)
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
|
|
| |
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
|
|
|
|
| |
This way those function don't care about the flags they don't know about
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
|
|
|
| |
This method should use the msgb_tlv_put routines instead
of the stuff it is doing. This will be cleaned up.
|
| |
|
| |
|
|
|
|
| |
This is really TLV...
|
|
|
|
|
| |
Use the msgb_tv_put functions for putting the data into
the message. Do not support the extended error reports.
|
| |
|
|
|
|
|
|
|
| |
it returns if a given bit in the vector is "high" or "low".
the bitval that represents "high" depends on the bit position.
bitval2mask returns that. so we must check if the bit in the vector
equals the returned bitval.
|
|
|
|
|
|
| |
It is easier from languages that dlopen libosmocore to have a function
to access this data than to poke at the bytes of the struct directly. Add
copyright for this method and the reset method I did earlier this year.
|
| |
|
|
|
|
| |
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
| |
|
|
|
|
|
| |
The actual gsm_7bit_decode can still cause a buffer overrun
but at least we are safe until this point.
|
|
|
|
| |
Make sure that the mandatory and optional part fits.
|
|
|
|
|
|
| |
Use a while() {} to check offset +2 <= length on the first
iteration of the loop. Once we have the component length
check that it is going to fit into the given length.
|
|
|
|
| |
Work with uint16_t for the length all the way.
|
|
|
|
|
| |
This is fixing the current crashes. Next we will need to
manipulate the content...
|
|
|
|
|
|
| |
The current USSD code is not doing any size checks, add a test
case to find out how easily we access the data out of bounds.
Begin to use the length in some places.
|
|
|
|
|
|
|
| |
- Change u_int8 to uint8
- Change DEBUGP to LOGP
- Change fprintf(stderr, to LOGP(0, LOGL_DEBUG
- We should define log areas used inside libosmocore
|
|
|
|
|
|
| |
This file format will be used to store per country code,
per network code messages. This will be used for various
things ranging from access control, to messages...
|
|
|
|
|
|
| |
These routines come from OpenBSC, the msgb_wrap_* functions
belong to Mike Haben, the rest is mine. The msgb allocation
is compatible to the GSM48 allocation in OpenBSC.
|
|
|
|
|
|
|
|
| |
The highest bit must be set as "No extension byte" marker,
so that the next byte is considered to be the BCD number
and not some more control stuff
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
|
|
|
|
|
| |
The nat code stumbled over the CIC bug as it was detecting
timeslot 0x1 as a new CIC and we were patching the data outside
the actual packet... The TLV parser needs some better size
checking too.
|
|
|
|
|
|
| |
This is required for target build in libosmocore
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
|
|
|
|
| |
It is easier to call these two functions from bindings than
wrapping the vty structure and figuring out the alignment of
the enum on all different ABIs.
|
| |
|
|
|
|
|
| |
Use SUBDIRS to build src first and the src/vty. We will need
to find the right way add the dependencies.
|