Age | Commit message (Collapse) | Author |
|
There are two functions that actually set this flag:
int _x_set_file_close_on_exec()
int _x_set_socket_close_on_exec()
(We need two functions because file descriptors and sockets
are not the same under WIN32 - of course).
These function have been assigned "internal" visibility so
that they can be used throughout libxine.so itself while still
not being exported to the global symbol table. In other words,
they're both as close to being "static" as I can make them.
|
|
|
|
|
|
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.
|
|
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
|
|
For contributed code, leave whatever the version we last synced for is using
to make simpler future syncs.
|
|
We have seen input_rtp lock up in use, and traced the problem to the separate
tail/head locks on the input buffer. Reduce to a single lock, increasing lock
contention between the reader and the writer, but removing the previous
deadlock risk.
Also use select() before recv(), to ensure that we never wait forever for
packets (e.g. if we're trying to receive a multicast stream, but an
administrator has blocked all multicast packets to the device - iptables -A
INPUT --dst 224.0.0.0/4 -j DROP induces this failure for testing).
|
|
CVS patchset: 8529
CVS date: 2007/01/19 01:25:24
|
|
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
|
|
(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
|
|
(Diego Pettenò)
CVS patchset: 7985
CVS date: 2006/05/03 19:46:06
|
|
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
|
|
CVS patchset: 7732
CVS date: 2005/09/13 00:52:25
|
|
Incremented all input plugins API version.
CVS patchset: 7384
CVS date: 2005/02/06 15:00:34
|
|
is. Should protect against a plugin returning a malloc'd variable for
example.
CVS patchset: 6821
CVS date: 2004/07/20 00:50:10
|
|
http://article.gmane.org/gmane.comp.video.xine.devel/9532
it is now up to demuxers to decide what the 0..65535 position means.
demuxers tested: ogg, voc, flac, rm, asf, vqa, vob, avi, y4m, au, mov, ts, mp3, mpg, wav, ra, mve
CVS patchset: 6686
CVS date: 2004/06/13 21:28:52
|
|
just testing for __sun might not be enough
CVS patchset: 6275
CVS date: 2004/03/16 20:51:19
|
|
CVS patchset: 6268
CVS date: 2004/03/16 11:09:11
|
|
CVS patchset: 6264
CVS date: 2004/03/15 16:32:13
|
|
CVS patchset: 6263
CVS date: 2004/03/15 15:18:45
|
|
before aborting
CVS patchset: 6211
CVS date: 2004/03/03 20:09:11
|
|
Patch from Steve <sgbirch at imsmail dot org>
Warning: The code looks ok but I can't test it.
CVS patchset: 6201
CVS date: 2004/03/01 22:22:54
|
|
patch by Graham Brooks <gbrooks@imsmail.org>
CVS patchset: 6067
CVS date: 2004/01/26 20:07:33
|
|
CVS patchset: 5912
CVS date: 2003/12/14 22:13:22
|
|
CVS patchset: 5888
CVS date: 2003/12/10 17:10:46
|
|
patch by Ramon van der Aar
CVS patchset: 5869
CVS date: 2003/12/08 12:35:20
|
|
CVS patchset: 5796
CVS date: 2003/11/26 19:43:26
|
|
CVS patchset: 4692
CVS date: 2003/04/26 22:34:31
|
|
old open() function replaced by :
*_class_get_instance() : return an instance if the plugin handles the mrl
*_plugin_open() : open the stream
CVS patchset: 4598
CVS date: 2003/04/13 16:02:53
|
|
CVS patchset: 4340
CVS date: 2003/03/05 17:16:17
|
|
CVS patchset: 4127
CVS date: 2003/02/10 22:08:36
|
|
(thanks Chris Rankin for noticing)
CVS patchset: 3693
CVS date: 2002/12/27 16:47:10
|
|
CVS patchset: 3281
CVS date: 2002/11/17 17:48:47
|
|
fix some input plugins that would not copy the mrl on open
CVS patchset: 2623
CVS date: 2002/09/06 18:13:10
|
|
adapt some more decoders
CVS patchset: 2618
CVS date: 2002/09/05 22:18:50
|
|
(geez this was a job)
CVS patchset: 2616
CVS date: 2002/09/05 20:44:38
|
|
broken now ... matthias/miguel: please fix it :-)
CVS patchset: 2606
CVS date: 2002/09/04 23:31:05
|
|
CVS patchset: 2214
CVS date: 2002/07/05 17:31:59
|
|
increased interface version numbers, to reflect the xine_t change
CVS patchset: 1939
CVS date: 2002/05/25 19:19:16
|
|
CVS patchset: 1853
CVS date: 2002/05/05 20:20:10
|
|
xine-lib should really never do an exit or abort, but instead pass back nice error values to the calling application, but until that happens, use abort() as that is tracable with gdb, whereas exit(1) is not backtraceable.
CVS patchset: 1811
CVS date: 2002/04/29 23:31:59
|
|
assignement (may segfault).
CVS patchset: 1772
CVS date: 2002/04/24 08:12:13
|
|
- update dxr3 and xvid plugins to new interface (add dispose() functions)
CVS patchset: 1766
CVS date: 2002/04/23 15:45:19
|
|
- add dispose() function to all decoder plugin structures
CVS patchset: 1763
CVS date: 2002/04/23 13:30:42
|
|
relevant information like stream type/size/bitrate instead.
demuxer cleanup, removed no-longer-needed macros :-)
switched off video_out/libmpeg2/... verbose log output messages.
CVS patchset: 1503
CVS date: 2002/02/17 17:32:49
|
|
CVS patchset: 1324
CVS date: 2002/01/02 18:16:07
|
|
CVS patchset: 1308
CVS date: 2001/12/27 14:30:28
|
|
CVS patchset: 1064
CVS date: 2001/11/18 03:53:23
|
|
acceleration?). Merge xine-utils header files to a new one "xineutils.h".
Update xine-lib C/headers to reflect those changes.
dxr3 headers are no more installed ine $includdir, but $includdir/xine.
CVS patchset: 1054
CVS date: 2001/11/17 14:26:36
|