F51352810170659801A80A1F,
F51352820170659801A80A1F,
F52EEB2F017E3F8C01A80A1F,
+ F5C6804202B407B701B7B2C9,
+ F5C6804302B407B701B7B2C9,
+ F5C6804402B407B701B7B2C9,
+ F5C6804502B407B701B7B2C9,
+ F5C6804602B407B701B7B2C9,
+ F5C6804702B407B701B7B2C9,
);
isa = PBXGroup;
path = Resources;
<dict>
<key>CFBundleTypeExtensions</key>
<array>
- <string>VOB</string>
+ <string>vob</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>vlc.icns</string>
<key>CFBundleTypeName</key>
- <string>VOB File (DVD)</string>
+ <string>VOB File (DVD Video)</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
</dict>
<key>CFBundleTypeIconFile</key>
<string>vlc.icns</string>
<key>CFBundleTypeName</key>
- <string>MPEG file</string>
+ <string>MPEG File</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
</dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>avi</string>
- <string>asf</string>
</array>
<key>CFBundleTypeIconFile</key>
- <string>vlc.icns</string>
+ <string>divx.icns</string>
+ <key>CFBundleTypeName</key>
+ <string>DivX File</string>
+ <key>CFBundleTypeRole</key>
+ <string>Viewer</string>
+ </dict>
+ <dict>
+ <key>CFBundleTypeExtensions</key>
+ <array>
+ <string>m1v</string>
+ </array>
+ <key>CFBundleTypeIconFile</key>
+ <string>mpeg1.icns</string>
<key>CFBundleTypeName</key>
- <string>DivX</string>
+ <string>MPEG-1 Video File</string>
+ <key>CFBundleTypeRole</key>
+ <string>Viewer</string>
+ </dict>
+ <dict>
+ <key>CFBundleTypeExtensions</key>
+ <array>
+ <string>m2v</string>
+ </array>
+ <key>CFBundleTypeIconFile</key>
+ <string>mpeg2.icns</string>
+ <key>CFBundleTypeName</key>
+ <string>MPEG-2 Video File</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
</dict>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
- <string>0.4.0</string>
+ <string>0.4.2</string>
<key>CFBundleSignature</key>
<string>VLC#</string>
<key>CFBundleVersion</key>
- <string>0.4.0</string>
+ <string>0.4.2</string>
<key>NSMainNibFile</key>
<string>MainMenu</string>
<key>NSPrincipalClass</key>
F52EEB2A017E3F0701A80A1F,
F52EEB2B017E3F0701A80A1F,
F52EEB30017E3F8C01A80A1F,
+ F5C6804802B407B701B7B2C9,
+ F5C6804902B407B701B7B2C9,
+ F5C6804A02B407B701B7B2C9,
+ F5C6804B02B407B701B7B2C9,
+ F5C6804C02B407B701B7B2C9,
+ F5C6804D02B407B701B7B2C9,
);
isa = PBXResourcesBuildPhase;
name = "Bundle Resources";
settings = {
};
};
+ F5C6804202B407B701B7B2C9 = {
+ isa = PBXFileReference;
+ path = divx.icns;
+ refType = 4;
+ };
+ F5C6804302B407B701B7B2C9 = {
+ isa = PBXFileReference;
+ path = mpeg2.icns;
+ refType = 4;
+ };
+ F5C6804402B407B701B7B2C9 = {
+ isa = PBXFileReference;
+ path = mpeg.icns;
+ refType = 4;
+ };
+ F5C6804502B407B701B7B2C9 = {
+ isa = PBXFileReference;
+ path = generic.icns;
+ refType = 4;
+ };
+ F5C6804602B407B701B7B2C9 = {
+ isa = PBXFileReference;
+ path = mpeg1.icns;
+ refType = 4;
+ };
+ F5C6804702B407B701B7B2C9 = {
+ isa = PBXFileReference;
+ path = mpeg4.icns;
+ refType = 4;
+ };
+ F5C6804802B407B701B7B2C9 = {
+ fileRef = F5C6804202B407B701B7B2C9;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ F5C6804902B407B701B7B2C9 = {
+ fileRef = F5C6804302B407B701B7B2C9;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ F5C6804A02B407B701B7B2C9 = {
+ fileRef = F5C6804402B407B701B7B2C9;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ F5C6804B02B407B701B7B2C9 = {
+ fileRef = F5C6804502B407B701B7B2C9;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ F5C6804C02B407B701B7B2C9 = {
+ fileRef = F5C6804602B407B701B7B2C9;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ F5C6804D02B407B701B7B2C9 = {
+ fileRef = F5C6804702B407B701B7B2C9;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
//F50
//F51
//F52
* ipv6.c: IPv6 network abstraction layer
*****************************************************************************
* Copyright (C) 2002 VideoLAN
- * $Id: ipv6.c,v 1.10 2002/06/01 16:45:34 sam Exp $
+ * $Id: ipv6.c,v 1.11 2002/06/09 22:57:00 massiot Exp $
*
* Authors: Alexis Guillard <alexis.guillard@bt.com>
* Christophe Massiot <massiot@via.ecp.fr>
+ * Remco Poortinga <poortinga@telin.nl>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
static int BuildAddr( struct sockaddr_in6 * p_socket,
char * psz_address, int i_port )
{
+ char * psz_multicast_interface = "";
+
#if defined(WIN32)
/* Try to get getaddrinfo() and freeaddrinfo() from wship6.dll */
typedef int (CALLBACK * GETADDRINFO) ( const char *nodename,
&& psz_address[strlen(psz_address) - 1] == ']' )
{
psz_address++;
+ /* see if there is an interface name in there... */
+ if( (psz_multicast_interface = strchr(psz_address, '%')) != NULL )
+ {
+ *psz_multicast_interface = '\0';
+ psz_multicast_interface++;
+ intf_WarnMsg( 3, "Interface name specified: \"%s\"",
+ psz_multicast_interface );
+ /* now convert that interface name to an index */
+ p_socket->sin6_scope_id = if_nametoindex(psz_multicast_interface);
+ intf_WarnMsg( 3, " = #%i\n", p_socket->sin6_scope_id );
+ }
psz_address[strlen(psz_address) - 1] = '\0' ;
#if !defined( WIN32 )
}
/* Join the multicast group if the socket is a multicast address */
- /* FIXME: To be written */
+ if( IN6_IS_ADDR_MULTICAST(&sock.sin6_addr) )
+ {
+ struct ipv6_mreq imr;
+ int res;
+
+ imr.ipv6mr_interface = sock.sin6_scope_id;
+ imr.ipv6mr_multiaddr = sock.sin6_addr;
+ res = setsockopt(i_handle, IPPROTO_IPV6, IPV6_JOIN_GROUP, &imr,
+ sizeof(imr));
+
+ if( res == -1 )
+ {
+ intf_ErrMsg( "ipv6 error: setsockopt JOIN_GROUP failed" );
+ }
+ }
+
if( *psz_server_addr )
{