Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-2-2
Commits
269d8af1
Commit
269d8af1
authored
Nov 23, 2002
by
Sam Hocevar
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* ./modules/access/http.c, ./modules/misc/network/ipv4.c: http and ipv4
plugins compile for WinCE. Couldn't test yet though.
parent
f6cf9ef8
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
126 additions
and
31 deletions
+126
-31
modules/access/http.c
modules/access/http.c
+29
-20
modules/misc/network/ipv4.c
modules/misc/network/ipv4.c
+97
-11
No files found.
modules/access/http.c
View file @
269d8af1
...
...
@@ -2,7 +2,7 @@
* http.c: HTTP access plug-in
*****************************************************************************
* Copyright (C) 2001, 2002 VideoLAN
* $Id: http.c,v 1.1
0 2002/11/15 14:41:49 gbazin
Exp $
* $Id: http.c,v 1.1
1 2002/11/23 04:40:53 sam
Exp $
*
* Authors: Christophe Massiot <massiot@via.ecp.fr>
*
...
...
@@ -25,22 +25,26 @@
* Preamble
*****************************************************************************/
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <string.h>
#include <errno.h>
#include <fcntl.h>
#include <vlc/vlc.h>
#include <vlc/input.h>
#ifdef HAVE_ERRNO_H
# include <errno.h>
#endif
#ifdef HAVE_FCNTL_H
# include <fcntl.h>
#endif
#ifdef HAVE_UNISTD_H
# include <unistd.h>
#elif defined( _MSC_VER ) && defined( _WIN32 )
#elif defined( _MSC_VER ) && defined( _WIN32 )
&& !defined( UNDER_CE )
# include <io.h>
#endif
#ifdef WIN32
#if defined( UNDER_CE )
# include <winsock.h>
#elif defined( WIN32 )
# include <winsock2.h>
# include <ws2tcpip.h>
# ifndef IN_MULTICAST
...
...
@@ -142,7 +146,11 @@ static int HTTPConnect( input_thread_t * p_input, off_t i_tell )
if
(
send
(
p_access_data
->
_socket
.
i_handle
,
psz_buffer
,
strlen
(
psz_buffer
),
0
)
==
(
-
1
)
)
{
#ifdef HAVE_ERRNO_H
msg_Err
(
p_input
,
"cannot send request (%s)"
,
strerror
(
errno
)
);
#else
msg_Err
(
p_input
,
"cannot send request"
);
#endif
Close
(
VLC_OBJECT
(
p_input
)
);
return
VLC_EGENERIC
;
}
...
...
@@ -549,9 +557,7 @@ static void Close( vlc_object_t *p_this )
msg_Info
(
p_input
,
"closing HTTP target `%s'"
,
p_input
->
psz_source
);
#ifdef UNDER_CE
CloseHandle
(
(
HANDLE
)
i_handle
);
#elif defined( WIN32 )
#if defined( WIN32 ) || defined( UNDER_CE )
closesocket
(
i_handle
);
#else
close
(
i_handle
);
...
...
@@ -575,9 +581,7 @@ static int SetProgram( input_thread_t * p_input,
static
void
Seek
(
input_thread_t
*
p_input
,
off_t
i_pos
)
{
_input_socket_t
*
p_access_data
=
(
_input_socket_t
*
)
p_input
->
p_access_data
;
#ifdef UNDER_CE
CloseHandle
(
(
HANDLE
)
p_access_data
->
_socket
.
i_handle
);
#elif defined( WIN32 )
#if defined( WIN32 ) || defined( UNDER_CE )
closesocket
(
p_access_data
->
_socket
.
i_handle
);
#else
close
(
p_access_data
->
_socket
.
i_handle
);
...
...
@@ -591,10 +595,6 @@ static void Seek( input_thread_t * p_input, off_t i_pos )
*****************************************************************************/
static
ssize_t
Read
(
input_thread_t
*
p_input
,
byte_t
*
p_buffer
,
size_t
i_len
)
{
#ifdef UNDER_CE
return
-
1
;
#else
input_socket_t
*
p_access_data
=
(
input_socket_t
*
)
p_input
->
p_access_data
;
struct
timeval
timeout
;
fd_set
fds
;
...
...
@@ -612,10 +612,17 @@ static ssize_t Read( input_thread_t * p_input, byte_t * p_buffer, size_t i_len )
i_ret
=
select
(
p_access_data
->
i_handle
+
1
,
&
fds
,
NULL
,
NULL
,
&
timeout
);
#ifdef HAVE_ERRNO_H
if
(
i_ret
==
-
1
&&
errno
!=
EINTR
)
{
msg_Err
(
p_input
,
"network select error (%s)"
,
strerror
(
errno
)
);
}
#else
if
(
i_ret
==
-
1
)
{
msg_Err
(
p_input
,
"network select error"
);
}
#endif
else
if
(
i_ret
>
0
)
{
ssize_t
i_recv
=
recv
(
p_access_data
->
i_handle
,
p_buffer
,
i_len
,
0
);
...
...
@@ -629,13 +636,15 @@ static ssize_t Read( input_thread_t * p_input, byte_t * p_buffer, size_t i_len )
if
(
i_recv
<
0
)
{
#ifdef HAVE_ERRNO_H
msg_Err
(
p_input
,
"recv failed (%s)"
,
strerror
(
errno
)
);
#else
msg_Err
(
p_input
,
"recv failed"
);
#endif
}
return
i_recv
;
}
return
0
;
#endif
}
modules/misc/network/ipv4.c
View file @
269d8af1
...
...
@@ -2,7 +2,7 @@
* ipv4.c: IPv4 network abstraction layer
*****************************************************************************
* Copyright (C) 2001, 2002 VideoLAN
* $Id: ipv4.c,v 1.
5 2002/11/14 22:38:48 massiot
Exp $
* $Id: ipv4.c,v 1.
6 2002/11/23 04:40:53 sam
Exp $
*
* Authors: Christophe Massiot <massiot@via.ecp.fr>
* Mathias Kretschmer <mathias@research.att.com>
...
...
@@ -26,21 +26,31 @@
* Preamble
*****************************************************************************/
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <string.h>
#include <errno.h>
#include <fcntl.h>
#include <vlc/vlc.h>
#ifdef HAVE_SYS_TYPES_H
# include <sys/types.h>
#endif
#ifdef HAVE_SYS_STAT_H
# include <sys/stat.h>
#endif
#ifdef HAVE_ERRNO_H
# include <errno.h>
#endif
#ifdef HAVE_FCNTL_H
# include <fcntl.h>
#endif
#ifdef HAVE_UNISTD_H
# include <unistd.h>
#elif defined( _MSC_VER ) && defined( _WIN32 )
#elif defined( _MSC_VER ) && defined( _WIN32 )
&& !defined( UNDER_CE )
# include <io.h>
#endif
#ifdef WIN32
#if defined( UNDER_CE )
# include <winsock.h>
#elif defined( WIN32 )
# include <winsock2.h>
# include <ws2tcpip.h>
# ifndef IN_MULTICAST
...
...
@@ -80,7 +90,7 @@ static int BuildAddr( struct sockaddr_in * p_socket,
/* Reset struct */
memset
(
p_socket
,
0
,
sizeof
(
struct
sockaddr_in
)
);
p_socket
->
sin_family
=
AF_INET
;
/* family */
p_socket
->
sin_port
=
htons
(
i_port
);
p_socket
->
sin_port
=
htons
(
(
uint16_t
)
i_port
);
if
(
!*
psz_address
)
{
p_socket
->
sin_addr
.
s_addr
=
INADDR_ANY
;
...
...
@@ -130,7 +140,7 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
int
i_bind_port
=
p_socket
->
i_bind_port
;
char
*
psz_server_addr
=
p_socket
->
psz_server_addr
;
int
i_server_port
=
p_socket
->
i_server_port
;
#if
def WIN32
#if
defined( WIN32 ) && !defined( UNDER_CE )
char
*
psz_bind_win32
;
/* WIN32 multicast kludge */
#endif
...
...
@@ -147,7 +157,11 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
* protocol */
if
(
(
i_handle
=
socket
(
AF_INET
,
SOCK_DGRAM
,
0
))
==
-
1
)
{
#ifdef HAVE_ERRNO_H
msg_Err
(
p_this
,
"cannot create socket (%s)"
,
strerror
(
errno
)
);
#else
msg_Err
(
p_this
,
"cannot create socket"
);
#endif
return
(
-
1
);
}
...
...
@@ -156,9 +170,17 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
if
(
setsockopt
(
i_handle
,
SOL_SOCKET
,
SO_REUSEADDR
,
(
void
*
)
&
i_opt
,
sizeof
(
i_opt
)
)
==
-
1
)
{
#ifdef HAVE_ERRNO_H
msg_Err
(
p_this
,
"cannot configure socket (SO_REUSEADDR: %s)"
,
strerror
(
errno
));
#else
msg_Err
(
p_this
,
"cannot configure socket (SO_REUSEADDR)"
);
#endif
#if defined( WIN32 ) || defined( UNDER_CE )
closesocket
(
i_handle
);
#else
close
(
i_handle
);
#endif
return
(
-
1
);
}
...
...
@@ -168,8 +190,12 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
if
(
setsockopt
(
i_handle
,
SOL_SOCKET
,
SO_RCVBUF
,
(
void
*
)
&
i_opt
,
sizeof
(
i_opt
)
)
==
-
1
)
{
#ifdef HAVE_ERRNO_H
msg_Warn
(
p_this
,
"cannot configure socket (SO_RCVBUF: %s)"
,
strerror
(
errno
));
#else
msg_Warn
(
p_this
,
"cannot configure socket (SO_RCVBUF)"
);
#endif
}
/* Check if we really got what we have asked for, because Linux, etc.
...
...
@@ -180,8 +206,12 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
if
(
getsockopt
(
i_handle
,
SOL_SOCKET
,
SO_RCVBUF
,
(
void
*
)
&
i_opt
,
&
i_opt_size
)
==
-
1
)
{
#ifdef HAVE_ERRNO_H
msg_Warn
(
p_this
,
"cannot query socket (SO_RCVBUF: %s)"
,
strerror
(
errno
)
);
#else
msg_Warn
(
p_this
,
"cannot query socket (SO_RCVBUF)"
);
#endif
}
else
if
(
i_opt
<
0x80000
)
{
...
...
@@ -192,7 +222,7 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
/* Build the local socket */
#if
def WIN32
#if
defined( WIN32 ) && !defined( UNDER_CE )
/* Under Win32 and for the multicast, we bind on INADDR_ANY,
* so let's call BuildAddr with "" instead of psz_bind_addr */
psz_bind_win32
=
psz_bind_addr
;
...
...
@@ -207,15 +237,28 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
if
(
BuildAddr
(
&
sock
,
psz_bind_addr
,
i_bind_port
)
==
-
1
)
#endif
{
msg_Dbg
(
p_this
,
"could not build local address"
);
#if defined( WIN32 ) || defined( UNDER_CE )
closesocket
(
i_handle
);
#else
close
(
i_handle
);
#endif
return
(
-
1
);
}
/* Bind it */
if
(
bind
(
i_handle
,
(
struct
sockaddr
*
)
&
sock
,
sizeof
(
sock
)
)
<
0
)
{
#ifdef HAVE_ERRNO_H
msg_Err
(
p_this
,
"cannot bind socket (%s)"
,
strerror
(
errno
)
);
#else
msg_Err
(
p_this
,
"cannot bind socket"
);
#endif
#if defined( WIN32 ) || defined( UNDER_CE )
closesocket
(
i_handle
);
#else
close
(
i_handle
);
#endif
return
(
-
1
);
}
...
...
@@ -226,11 +269,16 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
if
(
setsockopt
(
i_handle
,
SOL_SOCKET
,
SO_BROADCAST
,
(
void
*
)
&
i_opt
,
sizeof
(
i_opt
)
)
==
-
1
)
{
#ifdef HAVE_ERRNO_H
msg_Warn
(
p_this
,
"cannot configure socket (SO_BROADCAST: %s)"
,
strerror
(
errno
)
);
#else
msg_Warn
(
p_this
,
"cannot configure socket (SO_BROADCAST)"
);
#endif
}
}
#ifndef UNDER_CE
/* Join the multicast group if the socket is a multicast address */
#ifndef IN_MULTICAST
# define IN_MULTICAST(a) IN_CLASSD(a)
...
...
@@ -263,12 +311,21 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
if
(
setsockopt
(
i_handle
,
IPPROTO_IP
,
IP_ADD_MEMBERSHIP
,
(
char
*
)
&
imr
,
sizeof
(
struct
ip_mreq
)
)
==
-
1
)
{
#ifdef HAVE_ERRNO_H
msg_Err
(
p_this
,
"failed to join IP multicast group (%s)"
,
strerror
(
errno
)
);
#else
msg_Err
(
p_this
,
"failed to join IP multicast group"
);
#endif
#if defined( WIN32 ) || defined( UNDER_CE )
closesocket
(
i_handle
);
#else
close
(
i_handle
);
#endif
return
(
-
1
);
}
}
#endif
/* UNDER_CE */
if
(
*
psz_server_addr
)
{
...
...
@@ -276,7 +333,11 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
if
(
BuildAddr
(
&
sock
,
psz_server_addr
,
i_server_port
)
==
-
1
)
{
msg_Err
(
p_this
,
"cannot build remote address"
);
#if defined( WIN32 ) || defined( UNDER_CE )
closesocket
(
i_handle
);
#else
close
(
i_handle
);
#endif
return
(
-
1
);
}
...
...
@@ -284,8 +345,16 @@ static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
if
(
connect
(
i_handle
,
(
struct
sockaddr
*
)
&
sock
,
sizeof
(
sock
)
)
==
(
-
1
)
)
{
#ifdef HAVE_ERRNO_H
msg_Err
(
p_this
,
"cannot connect socket (%s)"
,
strerror
(
errno
)
);
#else
msg_Err
(
p_this
,
"cannot connect socket"
);
#endif
#if defined( WIN32 ) || defined( UNDER_CE )
closesocket
(
i_handle
);
#else
close
(
i_handle
);
#endif
return
(
-
1
);
}
}
...
...
@@ -320,14 +389,23 @@ static int OpenTCP( vlc_object_t * p_this, network_socket_t * p_socket )
* protocol */
if
(
(
i_handle
=
socket
(
AF_INET
,
SOCK_STREAM
,
0
))
==
-
1
)
{
#ifdef HAVE_ERRNO_H
msg_Err
(
p_this
,
"cannot create socket (%s)"
,
strerror
(
errno
)
);
#else
msg_Err
(
p_this
,
"cannot create socket"
);
#endif
return
(
-
1
);
}
/* Build remote address */
if
(
BuildAddr
(
&
sock
,
psz_server_addr
,
i_server_port
)
==
-
1
)
{
msg_Dbg
(
p_this
,
"could not build local address"
);
#if defined( WIN32 ) || defined( UNDER_CE )
closesocket
(
i_handle
);
#else
close
(
i_handle
);
#endif
return
(
-
1
);
}
...
...
@@ -335,8 +413,16 @@ static int OpenTCP( vlc_object_t * p_this, network_socket_t * p_socket )
if
(
connect
(
i_handle
,
(
struct
sockaddr
*
)
&
sock
,
sizeof
(
sock
)
)
==
(
-
1
)
)
{
#ifdef HAVE_ERRNO_H
msg_Err
(
p_this
,
"cannot connect socket (%s)"
,
strerror
(
errno
)
);
#else
msg_Err
(
p_this
,
"cannot connect socket"
);
#endif
#if defined( WIN32 ) || defined( UNDER_CE )
closesocket
(
i_handle
);
#else
close
(
i_handle
);
#endif
return
(
-
1
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment