Hello community,
here is the log from the commit of package libmtp for openSUSE:Factory checked in at 2011-12-31 17:19:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libmtp (Old)
and /work/SRC/openSUSE:Factory/.libmtp.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libmtp", Maintainer is "meissner@suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libmtp/libmtp.changes 2011-09-23 02:09:00.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libmtp.new/libmtp.changes 2011-12-31 17:19:40.000000000 +0100
@@ -1,0 +2,11 @@
+Thu Dec 29 11:46:54 UTC 2011 - adrian@suse.de
+
+- add support for Galaxy Nexus
+
+-------------------------------------------------------------------
+Wed Dec 21 21:30:49 UTC 2011 - adrian@suse.de
+
+- updated to 1.1.1
+ * device updates
+
+-------------------------------------------------------------------
Old:
----
libmtp-1.1.0.tar.gz
New:
----
add-galaxy-nexus-support.diff
libmtp-1.1.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libmtp.spec ++++++
--- /var/tmp/diff_new_pack.awdklZ/_old 2011-12-31 17:19:41.000000000 +0100
+++ /var/tmp/diff_new_pack.awdklZ/_new 2011-12-31 17:19:41.000000000 +0100
@@ -15,20 +15,20 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
-
%define debug_package_requires libmtp9 = %{version}-%{release}
Name: libmtp
Url: http://sf.net/projects/libmtp
-BuildRequires: doxygen pkg-config
+BuildRequires: doxygen
BuildRequires: libusb-devel
+BuildRequires: pkg-config
+Summary: Commandline utilities for access to MTP Players
License: LGPL-2.1+
Group: Productivity/Multimedia/Sound/Players
-AutoReqProv: on
-Summary: Commandline utilities for access to MTP Players
-Version: 1.1.0
-Release: 7
-Source0: %name-%version.tar.gz
+Version: 1.1.1
+Release: 0
+Source0: http://downloads.sourceforge.net/project/libmtp/libmtp/%{version}/libmtp-%{version}.tar.gz
+Patch0: add-galaxy-nexus-support.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -51,7 +51,6 @@
Marcus Meissner
%package -n libmtp9
-License: LGPL-2.1+
Summary: Library for accessing MTP Players
Group: Productivity/Multimedia/Sound/Players
@@ -75,12 +74,10 @@
Marcus Meissner
%package -n mtp-tools
-License: LGPL-2.1+
Summary: Commandline utilities for access to MTP Players
Group: Productivity/Multimedia/Sound/Players
%package devel
-License: LGPL-2.1+
Summary: Development files for access to MTP Player library
Group: Development/Libraries/Other
Requires: libmtp9 = %version
@@ -120,6 +117,7 @@
%prep
%setup -q
+%patch0 -p0
%build
%configure --disable-static --enable-doxygen
@@ -152,7 +150,7 @@
%dir /lib/udev
/lib/udev/mtp-probe
%dir /lib/udev/rules.d
-%config /lib/udev/rules.d/39-libmtp.rules
+%config /lib/udev/rules.d/69-libmtp.rules
%files devel
%defattr(-, root, root)
++++++ add-galaxy-nexus-support.diff ++++++
--- src/music-players.h
+++ src/music-players.h 2011-12-29 12:39:15.813619378 +0100
@@ -277,6 +277,9 @@
{ "Samsung", 0x04e8, "GT-B2710/Xcover 271", 0x68af,
DEVICE_FLAG_UNLOAD_DRIVER |
DEVICE_FLAG_PLAYLIST_SPL_V1 },
+ { "Samsung", 0x04e8, "GT-I9250 Galaxy Nexus", 0x685c,
+ DEVICE_FLAG_UNLOAD_DRIVER |
+ DEVICE_FLAG_PLAYLIST_SPL_V2 },
// From anonymous Sourceforge user
{ "Samsung", 0x04e8, "GT-S5230", 0xe20c, DEVICE_FLAG_NONE },
++++++ libmtp-1.1.0.tar.gz -> libmtp-1.1.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/configure new/libmtp-1.1.1/configure
--- old/libmtp-1.1.0/configure 2011-09-19 09:49:21.000000000 +0200
+++ new/libmtp-1.1.1/configure 2011-10-22 15:02:59.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for libmtp 1.1.0.
+# Generated by GNU Autoconf 2.68 for libmtp 1.1.1.
#
# Report bugs to .
#
@@ -570,8 +570,8 @@
# Identity of this package.
PACKAGE_NAME='libmtp'
PACKAGE_TARNAME='libmtp'
-PACKAGE_VERSION='1.1.0'
-PACKAGE_STRING='libmtp 1.1.0'
+PACKAGE_VERSION='1.1.1'
+PACKAGE_STRING='libmtp 1.1.1'
PACKAGE_BUGREPORT='libmtp-discuss@lists.sourceforge.net'
PACKAGE_URL=''
@@ -1313,7 +1313,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures libmtp 1.1.0 to adapt to many kinds of systems.
+\`configure' configures libmtp 1.1.1 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1383,7 +1383,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of libmtp 1.1.0:";;
+ short | recursive ) echo "Configuration of libmtp 1.1.1:";;
esac
cat <<\_ACEOF
@@ -1415,7 +1415,7 @@
--without-libiconv-prefix don't search for libiconv in includedir and libdir
--with-udev=DIR directory where udev is installed
[default=/lib/udev]
- --with-udev-rules=NAME file name for udev rules [default=39-libmtp.rules]
+ --with-udev-rules=NAME file name for udev rules [default=69-libmtp.rules]
--with-udev-group=GROUP file group for device nodes [default: none
specified]]
--with-udev-mode=GROUP file mode for device nodes [default: none
@@ -1497,7 +1497,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-libmtp configure 1.1.0
+libmtp configure 1.1.1
generated by GNU Autoconf 2.68
Copyright (C) 2010 Free Software Foundation, Inc.
@@ -1977,7 +1977,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by libmtp $as_me 1.1.0, which was
+It was created by libmtp $as_me 1.1.1, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -2793,7 +2793,7 @@
# Define the identity of the package.
PACKAGE='libmtp'
- VERSION='1.1.0'
+ VERSION='1.1.1'
cat >>confdefs.h <<_ACEOF
@@ -2843,12 +2843,6 @@
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
@@ -10664,10 +10658,14 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # Add ABI-specific directories to the system library path.
+ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
+
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -12603,11 +12601,14 @@
-# Optionally set name of udev rules file
-# priority is 39, so it will be loaded before libgphoto2 and the
-# manual list usb-media-players.rules.
+# Optionally set name of udev rules file, default
+# priority is 69, to appear before 70-acl.rules which handles
+# access control to the devices. We try to let all other userspace
+# libusb-based device handlers take precedence since libmtp may
+# attempt to autoprobe the devices.
+#
# Later rules can then use the identifiers for its processing.
-UDEV_RULES=39-libmtp.rules
+UDEV_RULES=69-libmtp.rules
# Check whether --with-udev-rules was given.
if test "${with_udev_rules+set}" = set; then :
@@ -13696,7 +13697,7 @@
s/.*/./; q'`
if test "$ac_dir" != "src/_stdint.h" && test "$ac_dir" != .; then
# The file is in a subdirectory.
- test ! -d "$ac_dir" && as_dir="$ac_dir"; as_fn_mkdir_p
+ test ! -d "$ac_dir" && (as_dir="$ac_dir"; as_fn_mkdir_p)
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uint8_t in stdint.h" >&5
@@ -13864,7 +13865,7 @@
s/.*/./; q'`
if test "$ac_dir" != "src/gphoto2-endian.h" && test "$ac_dir" != .; then
# The file is in a subdirectory.
- test ! -d "$ac_dir" && as_dir="$ac_dir"; as_fn_mkdir_p
+ test ! -d "$ac_dir" && (as_dir="$ac_dir"; as_fn_mkdir_p)
fi
# We're only interested in the target CPU, but it's not always set
@@ -15195,7 +15196,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by libmtp $as_me 1.1.0, which was
+This file was extended by libmtp $as_me 1.1.1, which was
generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -15261,7 +15262,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-libmtp config.status 1.1.0
+libmtp config.status 1.1.1
configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/configure.ac new/libmtp-1.1.1/configure.ac
--- old/libmtp-1.1.0/configure.ac 2011-09-19 09:48:33.000000000 +0200
+++ new/libmtp-1.1.1/configure.ac 2011-10-22 15:02:27.000000000 +0200
@@ -1,13 +1,12 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.52)
-AC_INIT([libmtp], [1.1.0], [libmtp-discuss@lists.sourceforge.net])
+AC_INIT([libmtp], [1.1.1], [libmtp-discuss@lists.sourceforge.net])
AC_CONFIG_MACRO_DIR([m4])
AM_INIT_AUTOMAKE([foreign])
AC_CONFIG_SRCDIR([src/libmtp.c])
AM_CONFIG_HEADER(config.h)
# Checks for programs.
-AC_LANG(C)
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_LN_S
@@ -23,14 +22,17 @@
[UDEV="${withval}"], [])
AC_SUBST(UDEV)
-# Optionally set name of udev rules file
-# priority is 39, so it will be loaded before libgphoto2 and the
-# manual list usb-media-players.rules.
+# Optionally set name of udev rules file, default
+# priority is 69, to appear before 70-acl.rules which handles
+# access control to the devices. We try to let all other userspace
+# libusb-based device handlers take precedence since libmtp may
+# attempt to autoprobe the devices.
+#
# Later rules can then use the identifiers for its processing.
-UDEV_RULES=39-libmtp.rules
+UDEV_RULES=69-libmtp.rules
AC_ARG_WITH(udev-rules,
AC_HELP_STRING([--with-udev-rules=NAME],
- [file name for udev rules [default=39-libmtp.rules]]),
+ [file name for udev rules [default=69-libmtp.rules]]),
[UDEV_RULES="${withval}"], [])
AC_SUBST(UDEV_RULES)
@@ -157,7 +159,7 @@
AX_NEED_STDINT_H([src/_stdint.h])
# Create a header file containing NetBSD-style byte swapping macros.
-# This m4 macros has caused severe pain, I am considering creating a
+# This m4 macros has caused severe pain, I am considering creating a
# hard-coded byte swapper that will be eternally portable.
AC_NEED_BYTEORDER_H(src/gphoto2-endian.h)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/libmtp.pc new/libmtp-1.1.1/libmtp.pc
--- old/libmtp-1.1.0/libmtp.pc 2011-09-19 09:49:49.000000000 +0200
+++ new/libmtp-1.1.1/libmtp.pc 2011-10-22 15:03:14.000000000 +0200
@@ -7,7 +7,7 @@
Name: libmtp
Description: libmtp is a library for accessing Media Transfer Protocol devices
-Version: 1.1.0
+Version: 1.1.1
Requires: libusb
Conflicts:
Libs: -L${libdir} -lmtp
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/ltmain.sh new/libmtp-1.1.1/ltmain.sh
--- old/libmtp-1.1.0/ltmain.sh 2011-04-19 17:30:33.000000000 +0200
+++ new/libmtp-1.1.1/ltmain.sh 2011-10-22 15:02:56.000000000 +0200
@@ -136,15 +136,15 @@
: ${CP="cp -f"}
test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'}
-: ${EGREP="grep -E"}
-: ${FGREP="grep -F"}
-: ${GREP="grep"}
+: ${EGREP="/bin/grep -E"}
+: ${FGREP="/bin/grep -F"}
+: ${GREP="/bin/grep"}
: ${LN_S="ln -s"}
: ${MAKE="make"}
: ${MKDIR="mkdir"}
: ${MV="mv -f"}
: ${RM="rm -f"}
-: ${SED="sed"}
+: ${SED="/bin/sed"}
: ${SHELL="${CONFIG_SHELL-/bin/sh}"}
: ${Xsed="$SED -e 1s/^X//"}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/m4/byteorder.m4 new/libmtp-1.1.1/m4/byteorder.m4
--- old/libmtp-1.1.0/m4/byteorder.m4 2011-01-10 14:05:45.000000000 +0100
+++ new/libmtp-1.1.1/m4/byteorder.m4 2011-10-22 00:25:25.000000000 +0200
@@ -35,7 +35,7 @@
ac_dir=`AS_DIRNAME(["$1"])`
if test "$ac_dir" != "$1" && test "$ac_dir" != .; then
# The file is in a subdirectory.
- test ! -d "$ac_dir" && AS_MKDIR_P(["$ac_dir"])
+ test ! -d "$ac_dir" && (AS_MKDIR_P(["$ac_dir"]))
fi
# We're only interested in the target CPU, but it's not always set
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/m4/libtool.m4 new/libmtp-1.1.1/m4/libtool.m4
--- old/libmtp-1.1.0/m4/libtool.m4 2011-04-19 17:30:33.000000000 +0200
+++ new/libmtp-1.1.1/m4/libtool.m4 2011-10-22 15:02:56.000000000 +0200
@@ -2610,10 +2610,14 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # Add ABI-specific directories to the system library path.
+ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
+
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/m4/stdint.m4 new/libmtp-1.1.1/m4/stdint.m4
--- old/libmtp-1.1.0/m4/stdint.m4 2011-01-10 14:05:45.000000000 +0100
+++ new/libmtp-1.1.1/m4/stdint.m4 2011-10-22 00:25:18.000000000 +0200
@@ -34,7 +34,7 @@
ac_dir=`AS_DIRNAME(["$1"])`
if test "$ac_dir" != "$1" && test "$ac_dir" != .; then
# The file is in a subdirectory.
- test ! -d "$ac_dir" && AS_MKDIR_P(["$ac_dir"])
+ test ! -d "$ac_dir" && (AS_MKDIR_P(["$ac_dir"]))
fi
AX_CHECK_DEFINED_TYPE(uint8_t,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/src/Makefile.am new/libmtp-1.1.1/src/Makefile.am
--- old/libmtp-1.1.0/src/Makefile.am 2011-09-19 09:48:33.000000000 +0200
+++ new/libmtp-1.1.1/src/Makefile.am 2011-10-22 15:02:44.000000000 +0200
@@ -30,7 +30,7 @@
# ---------------------------------------------------------------------------
CURRENT=9
AGE=0
-REVISION=0
+REVISION=1
SOVERSION=$(CURRENT):$(REVISION):$(AGE)
LT_CURRENT_MINUS_AGE=`expr $(CURRENT) - $(AGE)`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/src/Makefile.in new/libmtp-1.1.1/src/Makefile.in
--- old/libmtp-1.1.0/src/Makefile.in 2011-09-19 09:49:19.000000000 +0200
+++ new/libmtp-1.1.1/src/Makefile.in 2011-10-22 15:02:59.000000000 +0200
@@ -258,7 +258,7 @@
# ---------------------------------------------------------------------------
CURRENT = 9
AGE = 0
-REVISION = 0
+REVISION = 1
SOVERSION = $(CURRENT):$(REVISION):$(AGE)
LT_CURRENT_MINUS_AGE = `expr $(CURRENT) - $(AGE)`
@COMPILE_MINGW32_TRUE@W32_LIBS = -lws2_32
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/src/device-flags.h new/libmtp-1.1.1/src/device-flags.h
--- old/libmtp-1.1.0/src/device-flags.h 2011-04-19 17:26:08.000000000 +0200
+++ new/libmtp-1.1.1/src/device-flags.h 2011-10-21 23:59:31.000000000 +0200
@@ -266,3 +266,13 @@
* like this, so it's not done by default.
*/
#define DEVICE_FLAG_FORCE_RESET_ON_CLOSE 0x10000000
+/**
+ * All these bug flags need to be set on Android devices,
+ * they claim to support MTP operations they actually
+ * cannot handle. These are auto-assigned to devices reporting
+ * "android.com" in their device extension descriptor.
+ */
+#define DEVICE_FLAGS_ANDROID_BUGS \
+ (DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST | \
+ DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST | \
+ DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/src/gphoto2-endian.h new/libmtp-1.1.1/src/gphoto2-endian.h
--- old/libmtp-1.1.0/src/gphoto2-endian.h 2011-09-19 09:49:44.000000000 +0200
+++ new/libmtp-1.1.1/src/gphoto2-endian.h 2011-10-22 15:03:13.000000000 +0200
@@ -1,5 +1,5 @@
/* This file is generated automatically by configure */
-/* It is valid only for the system type powerpc64-unknown-linux-gnu */
+/* It is valid only for the system type x86_64-unknown-linux-gnu */
#ifndef __BYTEORDER_H
#define __BYTEORDER_H
@@ -47,38 +47,43 @@
#define BE32TOH(x) (x) = be32toh(x)
#define BE16TOH(x) (x) = be16toh(x)
-/* Define our own extended byte swapping macros for big-endian machines */
+/* On little endian machines, these macros are null */
#ifndef htole16
-# define htole16(x) swap16(x)
+# define htole16(x) (x)
#endif
#ifndef htole32
-# define htole32(x) swap32(x)
+# define htole32(x) (x)
+#endif
+#ifndef htole64
+# define htole64(x) (x)
#endif
#ifndef le16toh
-# define le16toh(x) swap16(x)
+# define le16toh(x) (x)
#endif
#ifndef le32toh
-# define le32toh(x) swap32(x)
+# define le32toh(x) (x)
#endif
#ifndef le64toh
-# define le64toh(x) swap64(x)
+# define le64toh(x) (x)
#endif
+#define HTOLE16(x) (void) (x)
+#define HTOLE32(x) (void) (x)
+#define HTOLE64(x) (void) (x)
+#define LE16TOH(x) (void) (x)
+#define LE32TOH(x) (void) (x)
+#define LE64TOH(x) (void) (x)
+
+/* These don't have standard aliases */
#ifndef htobe64
-# define htobe64(x) (x)
+# define htobe64(x) swap64(x)
#endif
#ifndef be64toh
-# define be64toh(x) (x)
+# define be64toh(x) swap64(x)
#endif
-#define HTOLE16(x) (x) = htole16(x)
-#define HTOLE32(x) (x) = htole32(x)
-#define LE16TOH(x) (x) = le16toh(x)
-#define LE32TOH(x) (x) = le32toh(x)
-#define LE64TOH(x) (x) = le64toh(x)
-
-#define HTOBE64(x) (void) (x)
-#define BE64TOH(x) (void) (x)
+#define HTOBE64(x) (x) = htobe64(x)
+#define BE64TOH(x) (x) = be64toh(x)
/* Define the C99 standard length-specific integer types */
#include <_stdint.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/src/libmtp.c new/libmtp-1.1.1/src/libmtp.c
--- old/libmtp-1.1.0/src/libmtp.c 2011-04-19 17:26:08.000000000 +0200
+++ new/libmtp-1.1.1/src/libmtp.c 2011-10-22 00:00:25.000000000 +0200
@@ -1704,6 +1704,12 @@
/* descriptors are divided by semicolons */
while (end < strlen(desc)) {
+ /* Skip past initial whitespace */
+ while (desc[start] == ' ' && end < strlen(desc)) {
+ start++;
+ end++;
+ }
+ /* Detect extension */
while (desc[end] != ';' && end < strlen(desc))
end++;
if (end < strlen(desc)) {
@@ -1872,6 +1878,26 @@
current_params->deviceinfo.VendorExtensionDesc);
/*
+ * Android has a number of bugs, force-assign these bug flags
+ * if Android is encountered.
+ */
+ {
+ LIBMTP_device_extension_t *tmpext = mtp_device->extensions;
+
+ while (tmpext != NULL) {
+ /*
+ * If it is fixed in later versions, test on tmpext->major, tmpext->minor
+ */
+ if (!strcmp(tmpext->name, "android.com")) {
+ LIBMTP_INFO("Android device detected, assigning default bug flags\n");
+ ptp_usb->rawdevice.device_entry.device_flags |=
+ DEVICE_FLAGS_ANDROID_BUGS;
+ }
+ tmpext = tmpext->next;
+ }
+ }
+
+ /*
* If the OGG or FLAC filetypes are flagged as "unknown", check
* if the firmware has been updated to actually support it.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/src/libmtp.h new/libmtp-1.1.1/src/libmtp.h
--- old/libmtp-1.1.0/src/libmtp.h 2011-09-19 09:49:47.000000000 +0200
+++ new/libmtp-1.1.1/src/libmtp.h 2011-10-22 15:03:13.000000000 +0200
@@ -29,8 +29,8 @@
#ifndef LIBMTP_H_INCLUSION_GUARD
#define LIBMTP_H_INCLUSION_GUARD
-#define LIBMTP_VERSION 1.1.0
-#define LIBMTP_VERSION_STRING "1.1.0"
+#define LIBMTP_VERSION 1.1.1
+#define LIBMTP_VERSION_STRING "1.1.1"
/* This handles MSVC pecularities */
#ifdef _MSC_VER
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/src/music-players.h new/libmtp-1.1.1/src/music-players.h
--- old/libmtp-1.1.0/src/music-players.h 2011-09-19 09:48:33.000000000 +0200
+++ new/libmtp-1.1.1/src/music-players.h 2011-10-22 00:35:17.000000000 +0200
@@ -354,10 +354,12 @@
// From Anonymous SourceForge User
{ "Philips", 0x0471, "GoGear Ariaz", 0x20b9,
DEVICE_FLAG_UNLOAD_DRIVER },
+ // From Anonymous SourceForge User
+ { "Philips", 0x0471, "GoGear Vibe/02", 0x20e5,
+ DEVICE_FLAG_UNLOAD_DRIVER },
// from XNJB user
{ "Philips", 0x0471, "PSA235", 0x7e01, DEVICE_FLAG_NONE },
-
/*
* Acer
*/
@@ -365,7 +367,8 @@
{ "Acer", 0x0502, "Iconia TAB A500 v1", 0x3325, DEVICE_FLAG_NONE },
// Reported by: Franck VDL
{ "Acer", 0x0502, "Iconia TAB A500 v2", 0x3341, DEVICE_FLAG_NONE },
-
+ // Reported by: Arvin Schnell
+ { "Acer", 0x0502, "Iconia TAB A100", 0x3349, DEVICE_FLAG_NONE },
/*
* SanDisk
@@ -470,7 +473,12 @@
DEVICE_FLAG_NO_RELEASE_INTERFACE | DEVICE_FLAG_ALWAYS_PROBE_DESCRIPTOR |
DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS |
DEVICE_FLAG_CANNOT_HANDLE_DATEMODIFIED},
-
+ // Reported by mattyj2001@users.sourceforge.net
+ { "SanDisk", 0x0781, "Sansa Clip Zip", 0x74e4,
+ DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST |
+ DEVICE_FLAG_NO_RELEASE_INTERFACE | DEVICE_FLAG_ALWAYS_PROBE_DESCRIPTOR |
+ DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS |
+ DEVICE_FLAG_CANNOT_HANDLE_DATEMODIFIED},
/*
* iRiver
@@ -587,6 +595,8 @@
* Dell
*/
{ "Dell, Inc", 0x413c, "DJ Itty", 0x4500, DEVICE_FLAG_NONE },
+ /* Reported by: JR */
+ { "Dell, Inc", 0x413c, "Dell Streak 7", 0xb10b, DEVICE_FLAGS_ANDROID_BUGS },
/*
* Toshiba
@@ -771,6 +781,9 @@
// this flag atleast is needed
{ "Nokia", 0x0421, "5800 XpressMusic v2", 0x0155,
DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+ // Yet another version... I think
+ { "Nokia", 0x0421, "5800 XpressMusic v3", 0x0159,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
// From an anonymous SourceForge user
// Not verified to be MTP
{ "Nokia", 0x0421, "E63", 0x0179, DEVICE_FLAG_NONE },
@@ -802,8 +815,12 @@
{ "Nokia", 0x0421, "N8", 0x02fe, DEVICE_FLAG_NONE },
// From: Lan Liu at Nokia
{ "Nokia", 0x0421, "N8 (Ovi mode)", 0x0302, DEVICE_FLAG_NONE },
+ // From: Martijn Hoogendoorn
+ { "Nokia", 0x0421, "E7", 0x0334, DEVICE_FLAG_NONE },
// From: Raul Metsma
- { "Nokia", 0x0421, "E7", 0x0335, DEVICE_FLAG_NONE },
+ { "Nokia", 0x0421, "E7 (Ovi mode)", 0x0335, DEVICE_FLAG_NONE },
+ // Reported by Anonymous SourceForge user
+ { "Nokia", 0x0421, "N950", 0x03d2, DEVICE_FLAG_NONE },
// From: http://nds2.nokia.com/files/support/global/phones/software/Nokia_3250_WMP10_...
{ "Nokia", 0x0421, "3250 Mobile Phone", 0x0462, DEVICE_FLAG_NONE },
// From http://nds2.nokia.com/files/support/global/phones/software/Nokia_N93_WMP10_D...
@@ -1137,6 +1154,14 @@
DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST |
DEVICE_FLAG_UNIQUE_FILENAMES |
DEVICE_FLAG_FORCE_RESET_ON_CLOSE },
+ // Reported by anonymous SourceForge user
+ { "Sony", 0x054c, "Walkman NWZ-W252B", 0x04bb,
+ DEVICE_FLAG_UNLOAD_DRIVER |
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST |
+ DEVICE_FLAG_UNIQUE_FILENAMES |
+ DEVICE_FLAG_FORCE_RESET_ON_CLOSE },
+ // Suspect this device has strong DRM features
+ // See https://answers.launchpad.net/ubuntu/+source/libmtp/+question/149587
{ "Sony", 0x054c, "Walkman NWZ-B153F", 0x04be,
DEVICE_FLAG_UNLOAD_DRIVER |
DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST |
@@ -1166,49 +1191,79 @@
* for now.
*/
// Reported by Thomas Schweitzer
- { "SonyEricsson", 0x0fce, "K550i", 0xe000, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "K550i", 0xe000,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by Øyvind Stegard
- { "SonyEricsson", 0x0fce, "K850i", 0x0075, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "K850i", 0x0075,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by Michael Eriksson
- { "SonyEricsson", 0x0fce, "W910", 0x0076, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "W910", 0x0076,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by Zack
- { "SonyEricsson", 0x0fce, "W890i", 0x00b3, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "W890i", 0x00b3,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by robert dot ahlskog at gmail
- { "SonyEricsson", 0x0fce, "W760i", 0x00c6, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "W760i", 0x00c6,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by Linus Åkesson
- { "SonyEricsson", 0x0fce, "C902", 0x00d4, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "C902", 0x00d4,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by an anonymous SourceForge user
- { "SonyEricsson", 0x0fce, "C702", 0x00d9, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "C702", 0x00d9,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by Christian Zuckschwerdt
- { "SonyEricsson", 0x0fce, "W980", 0x00da, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "W980", 0x00da,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by David Taylor
- { "SonyEricsson", 0x0fce, "C905", 0x00ef, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "C905", 0x00ef,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by David House
{ "SonyEricsson", 0x0fce, "W595", 0x00f3,
- DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST },
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+ DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST },
// Reported by Mattias Evensson
- { "SonyEricsson", 0x0fce, "W902", 0x00f5, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "W902", 0x00f5,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by Sarunas
// Doesn't need any flags according to reporter
- { "SonyEricsson", 0x0fce, "T700", 0x00fb, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+ { "SonyEricsson", 0x0fce, "T700", 0x00fb,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
// Reported by Stéphane Pontier
- { "SonyEricsson", 0x0fce, "W705/W715", 0x0105, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "W705/W715", 0x0105,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by Håkan Kvist
- { "SonyEricsson", 0x0fce, "W995", 0x0112, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "W995", 0x0112,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by anonymous SourceForge user
- { "SonyEricsson", 0x0fce, "U5", 0x0133, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "U5", 0x0133,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by Flo
- { "SonyEricsson", 0x0fce, "U8i", 0x013a, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "U8i", 0x013a,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by xirotyu
- { "SonyEricsson", 0x0fce, "j10i2 (Elm)", 0x0144, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "j10i2 (Elm)", 0x0144,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ // Reported by Serge Chirik
+ { "SonyEricsson", 0x0fce, "j108i (Cedar)", 0x014e,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by Jonas Salling <>
// Erroneous MTP implementation seems to be from Aricent, returns
// broken transaction ID.
- { "SonyEricsson", 0x0fce, "LT15i (Xperia arc)", 0x14f, DEVICE_FLAG_IGNORE_HEADER_ERRORS },
+ { "SonyEricsson", 0x0fce, "LT15i (Xperia arc)", 0x14f,
+ DEVICE_FLAG_IGNORE_HEADER_ERRORS },
+ // Reported by Eamonn Webster
+ // Guessing on the ignore errors flag
+ { "SonyEricsson", 0x0fce, "Xperia Neo", 0x0156,
+ DEVICE_FLAG_IGNORE_HEADER_ERRORS },
+ // Reported by
+ { "SonyEricsson", 0x0fce, "ST18a", 0x161,
+ DEVICE_FLAG_IGNORE_HEADER_ERRORS },
// Reported by Jonas Nyrén
- { "SonyEricsson", 0x0fce, "W302", 0x10c8, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "W302", 0x10c8,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
// Reported by Anonymous Sourceforge user
- { "SonyEricsson", 0x0fce, "j10i (Elm)", 0xd144, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
+ { "SonyEricsson", 0x0fce, "j10i (Elm)", 0xd144,
+ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
@@ -1249,21 +1304,22 @@
// Reported by Google Inc's Yavor Goulishev
// Android 3.0 MTP stack seems to announce that it supports the
// list operations, but they do not work?
- { "Motorola", 0x22b8, "Xoom (ID 1)", 0x70a8,
- DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST |
- DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST |
- DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST },
+ { "Motorola", 0x22b8, "Xoom (ID 1)", 0x70a8, DEVICE_FLAGS_ANDROID_BUGS },
+
+ /*
+ * Google
+ * These guys lend their Vendor ID to anyone who comes down the
+ * road to produce an Android tablet it seems... The Vendor ID
+ * was originally used for Nexus phones
+ */
+ { "Google Inc (for Sony)", 0x18d1, "S1", 0x05b3,
+ DEVICE_FLAGS_ANDROID_BUGS },
// WiFi-only version of Xoom
// See: http://bugzilla.gnome.org/show_bug.cgi?id=647506
- { "Motorola", 0x18d1, "Xoom (MZ604)", 0x70a8,
- DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST |
- DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST |
- DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST },
- { "Motorola", 0x22b8, "Xoom (ID 2)", 0x70a9,
- DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST |
- DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST |
- DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST },
-
+ { "Google Inc (for Motorola)", 0x18d1, "Xoom (MZ604)", 0x70a8,
+ DEVICE_FLAGS_ANDROID_BUGS },
+ { "Google Inc (for Motorola)", 0x22b8, "Xoom (ID 2)", 0x70a9,
+ DEVICE_FLAGS_ANDROID_BUGS },
/*
* Media Keg
*/
@@ -1376,6 +1432,15 @@
{ "Asus", 0x0b05, "TF101 Eeepad Transformer", 0x4e0f, DEVICE_FLAG_NONE },
{ "Asus", 0x0b05, "FT101 Eeepad Transformer", 0x4e1f, DEVICE_FLAG_NONE },
+
+ /*
+ * Lenovo
+ */
+ // Reported by anonymous sourceforge user
+ // Adding Android default bug flags since it appears to be an Android
+ { "Lenovo", 0x17ef, "Lenovo ThinkPad Tablet", 0x741c,
+ DEVICE_FLAGS_ANDROID_BUGS },
+
/*
* Other strange stuff.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmtp-1.1.0/util/mtp-hotplug.c new/libmtp-1.1.1/util/mtp-hotplug.c
--- old/libmtp-1.1.0/util/mtp-hotplug.c 2011-09-19 09:48:33.000000000 +0200
+++ new/libmtp-1.1.1/util/mtp-hotplug.c 2011-10-22 21:15:27.000000000 +0200
@@ -140,6 +140,12 @@
printf("SUBSYSTEM==\"usb\", GOTO=\"libmtp_usb_rules\"\n"
"GOTO=\"libmtp_rules_end\"\n\n"
"LABEL=\"libmtp_usb_rules\"\n\n");
+ printf("# Some sensitive devices we surely don\'t wanna probe, color instruments\n");
+ printf("ATTR{idVendor}==\"0670\", GOTO=\"libmtp_rules_end\"\n");
+ printf("ATTR{idVendor}==\"0765\", GOTO=\"libmtp_rules_end\"\n");
+ printf("ATTR{idVendor}==\"085c\", GOTO=\"libmtp_rules_end\"\n");
+ printf("ATTR{idVendor}==\"0971\", GOTO=\"libmtp_rules_end\"\n");
+ printf("\n");
break;
case style_udev_old:
printf("# UDEV-style hotplug map for libmtp\n");
@@ -242,7 +248,7 @@
* every USB device that is either PTP or vendor specific
*/
printf("\n# Autoprobe vendor-specific, communication and PTP devices\n");
- printf("ENV{ID_MTP_DEVICE}!=\"1\", ATTR{bDeviceClass}==\"00|02|06|ef|ff\", PROGRAM=\"%smtp-probe /sys$env{DEVPATH} $attr{busnum} $attr{devnum}\", RESULT==\"1\", %s", mtp_probe_dir, action);
+ printf("ENV{ID_MTP_DEVICE}!=\"1\", ENV{MTP_NO_PROBE}!=\"1\", ENV{COLOR_MEASUREMENT_DEVICE}!=\"1\", ENV{libsane_matched}!=\"yes\", ATTR{bDeviceClass}==\"00|02|06|ef|ff\", PROGRAM=\"%smtp-probe /sys$env{DEVPATH} $attr{busnum} $attr{devnum}\", RESULT==\"1\", %s", mtp_probe_dir, action);
if (udev_group != NULL) printf(", GROUP=\"%s\"", udev_group);
if (udev_mode != NULL) printf(", MODE=\"%s\"", udev_mode);
printf("\n");
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org