annotate libmpdemux/open.c @ 18001:a2683ee7cb5a

fix descrambling of asf file, where signed buffer could cause erroneous values to be filled in descrable variables, add misssing check for one of these variables and restore sign of these variables as insurance that these checks will work even in such case.
author iive
date Thu, 30 Mar 2006 23:06:18 +0000
parents 6ac0b5f0d1ed
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1467
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
1
4343
b0c8eed7473c Extended DVD chapter specification. Remove -last-chapter option.
kmkaplan
parents: 4291
diff changeset
2 #include <ctype.h>
1467
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
3 #include <stdio.h>
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
4 #include <stdlib.h>
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
5 #include <string.h>
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
6 #include <unistd.h>
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
7 #include <fcntl.h>
9746
27fff718ede6 Stream cleanup, don't use blah_on options anymore.
albeu
parents: 9712
diff changeset
8 #include <string.h>
1467
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
9
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
10 #include "config.h"
1567
5c7760aa4f94 printf->mp_msg/mp_dbg
arpi
parents: 1482
diff changeset
11 #include "mp_msg.h"
1584
e49b3927c793 more messages for translator :)
arpi
parents: 1567
diff changeset
12 #include "help_mp.h"
1467
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
13
1468
fbed9c34069c freebsd fix
arpi
parents: 1467
diff changeset
14 #ifdef __FreeBSD__
fbed9c34069c freebsd fix
arpi
parents: 1467
diff changeset
15 #include <sys/cdrio.h>
fbed9c34069c freebsd fix
arpi
parents: 1467
diff changeset
16 #endif
fbed9c34069c freebsd fix
arpi
parents: 1467
diff changeset
17
17012
6ff3379a0862 Unify include path handling, -I.. is in CFLAGS.
diego
parents: 15585
diff changeset
18 #include "m_option.h"
1467
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
19 #include "stream.h"
1482
4800d1c58dab --enable-streaming fix
arpi
parents: 1468
diff changeset
20 #include "demuxer.h"
4551
716b00618bfc add mfi support
pontscho
parents: 4390
diff changeset
21 #include "mf.h"
1467
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
22
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
23
9746
27fff718ede6 Stream cleanup, don't use blah_on options anymore.
albeu
parents: 9712
diff changeset
24 /// We keep these 2 for the gui atm, but they will be removed.
15484
15b5b56d809f restore vcd_track
nicodvb
parents: 15478
diff changeset
25 int vcd_track=0;
4222
de7eddb3fd70 Change to use cdrom-device and dvd-device options needed for DVD/TV/VCD
albeu
parents: 4146
diff changeset
26 char* cdrom_device=NULL;
17191
6ac0b5f0d1ed fix compilation when dvdkit and dvdread are not available
nicodvb
parents: 17012
diff changeset
27 int dvd_chapter=1;
6ac0b5f0d1ed fix compilation when dvdkit and dvdread are not available
nicodvb
parents: 17012
diff changeset
28 int dvd_last_chapter=0;
6ac0b5f0d1ed fix compilation when dvdkit and dvdread are not available
nicodvb
parents: 17012
diff changeset
29 char* dvd_device=NULL;
6ac0b5f0d1ed fix compilation when dvdkit and dvdread are not available
nicodvb
parents: 17012
diff changeset
30 int dvd_title=0;
5380
8a01cde9cf39 DVDnav support patch by David Holm and Kees Cook <mplayer@outflux.net>
arpi
parents: 4729
diff changeset
31
1467
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
32 // Open a new stream (stdin/file/vcd/url)
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
33
9795
20f8944a6e0c Remove -sdp
albeu
parents: 9773
diff changeset
34 stream_t* open_stream(char* filename,char** options, int* file_format){
12223
e7c8200ffdc5 Respect -playlist for asx streams
rtognimp
parents: 10807
diff changeset
35 // Check if playlist or unknown
e7c8200ffdc5 Respect -playlist for asx streams
rtognimp
parents: 10807
diff changeset
36 if (*file_format != DEMUXER_TYPE_PLAYLIST){
e7c8200ffdc5 Respect -playlist for asx streams
rtognimp
parents: 10807
diff changeset
37 *file_format=DEMUXER_TYPE_UNKNOWN;
e7c8200ffdc5 Respect -playlist for asx streams
rtognimp
parents: 10807
diff changeset
38 }
e7c8200ffdc5 Respect -playlist for asx streams
rtognimp
parents: 10807
diff changeset
39
9746
27fff718ede6 Stream cleanup, don't use blah_on options anymore.
albeu
parents: 9712
diff changeset
40 if(!filename) {
27fff718ede6 Stream cleanup, don't use blah_on options anymore.
albeu
parents: 9712
diff changeset
41 mp_msg(MSGT_OPEN,MSGL_ERR,"NULL filename, report this bug\n");
27fff718ede6 Stream cleanup, don't use blah_on options anymore.
albeu
parents: 9712
diff changeset
42 return NULL;
27fff718ede6 Stream cleanup, don't use blah_on options anymore.
albeu
parents: 9712
diff changeset
43 }
1467
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
44
6320
12136df07dbd common code to handle file/stdin/fifo opening, allows using named pipes and
arpi
parents: 5932
diff changeset
45 //============ Open STDIN or plain FILE ============
6910
1a747aee653b applied live.com streaming patch (-sdp and rtsp:// support) by Ross Finlayson <finlayson@live.com>
arpi
parents: 6853
diff changeset
46
9795
20f8944a6e0c Remove -sdp
albeu
parents: 9773
diff changeset
47 return open_stream_full(filename,STREAM_READ,options,file_format);
1467
f352e1e951ba stream opening -> open.c, initialframes ignored
arpi
parents:
diff changeset
48 }
1596
fc0e9953bc2d libDVDread support
arpi
parents: 1584
diff changeset
49