Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
This requires that many other files include config.h themselves.
Also convert <config.h> to "config.h".
|
|
|
|
xine-lib 1.1.12, and other 1.1.15 and earlier versions, does not
properly handle (a) negative and (b) zero values during unspecified
read function calls in input_file.c, input_net.c, input_smb.c, and
input_http.c, which allows remote attackers to cause a denial of
service (crash) or possibly execute arbitrary code via vectors such as
(1) a file or (2) an HTTP response, which triggers consequences such
as out-of-bounds reads and heap-based buffer overflows.
|
|
|
|
Add warning flags to the DEBUG_CFLAGS too.
|
|
--HG--
extra : transplant_source : %80%12%03%93%EFL%FC%AF%A6%22Z%D0%95C%D5%29%AF%FB%95%B2
|
|
Update input_dvb's PMT parser to match demux_ts's list of stream types.
This is a stop-gap approach, to avoid doing major rewrites to input_dvb.
Ideally, we'd fix the limitations in demux_ts that the comment above
input_dvb's PMT parser alludes to, and just parse all the streams in the PMT
to demux_ts.
In the meantime, this enables use of input_dvb with things like Finnish DVB-T
|
|
We've experienced glitches where the NIT does not match the transmission
parameters, and bugs in the kernel where the values we read back from the
frontend don't match the transmission.
To get round this, we've changed scan to store BANDWIDTH_AUTO and equivalents
in the channels.conf file. Update input_dvb to cope with automatic detection
of all frontend parameters.
|
|
filename
We don't have a "normal" Linux directory layout, and thus prefer to keep
channels.conf in an unusual place. Provide a configuration option to tell Xine
where to find channels.conf
|
|
When using Xine in a kiosk-type application, the DVB GUI presents messages
onscreen that confuse the user; because there's no keyboard and mouse, there's
no way to actually do anything useful with the GUI.
Provide a configuration option to turn off the GUI
--HG--
extra : transplant_source : c%F4%13I%97%3F%11%E8s%CCc%15%9F%AF%97%D7%13D%FC%AB
|
|
|
|
|
|
All the initialisation functions returning a new object instance that
was allocated through malloc() or calloc() can get the malloc
attribute so that the compiler can optimise their call.
|
|
When using a variable to store the result of strlen(), make sure its
type is size_t just like the function returns, rather than using a
smaller type like int.
--HG--
extra : transplant_source : %B0%D5%3B%D7%1Dy%0A%7E%7D%7C%023%08%B2%CE%D3t%0B3%D7
|
|
Also, reduce visibility of the i variable to the loop where it is
used.
|
|
Use the proper function for common memory operations (memset() for
zeroing, memcpy() for copying, memmove() for moving), instead of
looping through arrays.
By extension, remove loops to reset arrays when they were allocated
with calloc() and thus already zeroed.
|
|
Instead of creating strings through a series os string copy and
concatenations, use directly the appropriate printf-like function.
|
|
Instead of calling sprintf or snprintf with a "%s" format string, use
the proper strcpy, strncpy, strdup or strndup function.
|
|
The xine_xmalloc() function is going to be deprecated, as its
behaviour is rarely needed as such, and it's thus misused.
With this, almost all uses of xine_xmalloc() with static size (for
instance the value returned by sizeof()) or with a size that is
guaranteed not to be zero (like strlen()+1) are replaced with calls to
either calloc(1, ...) or malloc().
malloc() is used whenever the allocated memory is going to be
immediately overwritten, while calloc() is used in every other case,
as it sets the whole memory area to zero.
--HG--
extra : transplant_source : %8F%98%EC%02%1E%83%F0s%06X%83C%205Y%80%B12%CC%E1
|
|
load_channels was being called without checking the tuner fontend type, so
channels.conf could not be decoded. Tested for ATSC only.
|
|
|
|
For contributed code, leave whatever the version we last synced for is using
to make simpler future syncs.
|
|
|
|
If there's no signal, the tuner never goes to FE_TIMEDOUT. Add a separate
timeout, to prevent xine waiting forever in these situations.
|
|
|
|
|
|
The three attached patches (against 1.1.6) each increase the amount of
debug logging in their respective components. We've found the extra
logging useful when trying to track down faults.
I've split this into three patches to make it easier to apply only some
of our changes.
--
Comments welcome,
Simon Farnsworth
|
|
|
|
|
|
|
|
Previously, with junk content, the plugin could potentially consume lots of
memory (possibly causing a local DoS).
Also, a few small memory leaks have been eliminated.
|
|
|
|
CVS patchset: 8524
CVS date: 2007/01/19 01:05:24
|
|
*, so that 'return "something"' is valid. Note that _()/gettext() returns a char * but statically allocated, that the documentation considers constant.
CVS patchset: 8519
CVS date: 2007/01/18 23:02:18
|
|
CVS patchset: 8408
CVS date: 2006/12/08 22:26:22
|
|
CVS patchset: 8127
CVS date: 2006/07/13 09:50:14
|
|
(through backports), to avoid exporting unneeded internal symbols, making plugins' loading faster and use of internal copies of libraries more solid. It should automatically fall back to the old way in GCCs that does not support -fvisibility=hidden, but has to be tested carefully. No issues were found in the months of testing in Gentoo, but this requires special attention anyway.
CVS patchset: 8101
CVS date: 2006/07/10 22:08:12
|
|
CVS patchset: 8055
CVS date: 2006/06/18 20:29:03
|
|
(Diego Pettenò)
CVS patchset: 7985
CVS date: 2006/05/03 19:46:06
|
|
CVS patchset: 7963
CVS date: 2006/04/06 09:28:51
|
|
noted by Barry Scott.
CVS patchset: 7960
CVS date: 2006/04/06 08:00:50
|
|
CID: 278
Checker: USE_AFTER_FREE (help)
File: xine-lib/src/input/input_dvb.c
Function: dvb_plugin_dispose
Description: Using freed pointer "(this)->channels"
CID: 269
Checker: UNINIT (help)
File: xine-lib/src/input/input_dvb.c
Function: dvb_plugin_open
Description: Using uninitialized value "num_channels"
CID: 43
Checker: FORWARD_NULL (help)
File: xine-lib/src/input/input_dvb.c
Function: dvb_plugin_dispose
Description: Variable "(this)->channels" tracked as NULL was dereferenced.
CID: 219
Checker: RESOURCE_LEAK (help)
File: xine-lib/src/input/input_dvb.c
Function: dvb_parse_si
Description: Returned without freeing storage "bufptr"
CID: 218
Checker: RESOURCE_LEAK (help)
File: xine-lib/src/input/input_dvb.c
Function: load_epg_data
Description: Returned without freeing storage "seen_channels"
CID: 217
Checker: RESOURCE_LEAK (help)
File: xine-lib/src/input/input_dvb.c
Function: load_epg_data
Description: Returned without freeing storage "foo"
CID: 216
Checker: RESOURCE_LEAK (help)
File: xine-lib/src/input/input_dvb.c
Function: load_channels
Description: Returned without freeing storage "f"
CID: 215
Checker: RESOURCE_LEAK (help)
File: xine-lib/src/input/input_dvb.c
Function: dvb_class_get_autoplay_list
Description: Variable "tmpbuffer" not freed or pointed-to in function "fopen"
CID: 214
Checker: RESOURCE_LEAK (help)
File: xine-lib/src/input/input_dvb.c
Function: dvb_class_get_autoplay_list
Description: Returned without freeing storage "foobuffer"
CID: 252
Checker: REVERSE_INULL (help)
File: xine-lib/src/input/input_dvb.c
Function: dvb_zoom_cb
Description: Pointer "this" dereferenced before NULL check
CVS patchset: 7931
CVS date: 2006/03/16 22:10:33
|
|
CVS patchset: 7892
CVS date: 2006/02/14 18:41:43
|
|
Improved cross-compiling: detect and precedence of the host-specific libs
W32dll: enabled by platforms as originaly, user can override it
Fixed shell errors in the Makefile of the hackersguide
Detect the place of SDL header independently on platform
Fixed spelling in CDDA, include the header sys/param.h if available
Fixed format strings (fix warnings (or even bugs) on Gentoo/FreeBSD)
CVS patchset: 7815
CVS date: 2005/11/28 12:24:56
|
|
hopefuly somebody will be able to help fixing the
mess i did in dvdnav ;)
CVS patchset: 7759
CVS date: 2005/10/14 21:02:16
|
|
Windows ports fixes and improvements due to my current work on toxine:
- first experiments with external win32 pthreads,
more portable code (pthread_t may be a struct)
- headers refactored
- moved dirent win32 replacement to lib/, hide it for frontends,
used system version, if found, not used non-POSIX dirent->d_reclen
(this item doesn't work in MinGW), fix memleak in dvb
- separated settings for postproc and avcodec when using external ffmpeg
- check for malloc.h in public xine.m4, used it conditionally in xine headers
- replaced random() by POSIX more common rand()
- prevent one segfault in directx vo plugin, if fails
- M$VC port update
CVS patchset: 7709
CVS date: 2005/08/25 15:36:29
|
|
the TS stream. Change tuning slightly to workaround changes in the 2.6.10+
kernel driver.
CVS patchset: 7416
CVS date: 2005/02/14 08:30:27
|