Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37849192
en ru br
ALT Linux repositórios
S:1.7.2-alt1
5.0: 1.3-alt2
4.1: 1.3-alt2
4.0: 1.3-alt1
3.0: 1.0.1-alt2

Group :: Sistema/Bibliotecas
RPM: libopenobex

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

Patch: libopenobex-1.7.1-alt2.patch
Download


 .gear/rules                                        |   2 +
 .../tags/398f2f84c5b0020f318d1b82c21a45301165907e  |   6 ++
 .gear/tags/list                                    |   1 +
 CMakeLists.txt                                     |   5 +-
 CMakeModules/GenerateExportHeader.cmake            |  21 ++--
 include/openobex/obex_const.h                      |   4 +
 lib/CMakeLists.txt                                 |   2 -
 lib/api.c                                          |   2 +-
 lib/obex_client.c                                  |  11 ++
 lib/obex_object.c                                  |  23 ++--
 lib/transport/irobex.c                             |   1 +
 libopenobex.spec                                   | 118 +++++++++++++++++++++
 12 files changed, 169 insertions(+), 27 deletions(-)
diff --git a/.gear/rules b/.gear/rules
new file mode 100644
index 0000000..4fcfd99
--- /dev/null
+++ b/.gear/rules
@@ -0,0 +1,2 @@
+tar: @version@:.
+diff: @version@:. .
diff --git a/.gear/tags/398f2f84c5b0020f318d1b82c21a45301165907e b/.gear/tags/398f2f84c5b0020f318d1b82c21a45301165907e
new file mode 100644
index 0000000..0207325
--- /dev/null
+++ b/.gear/tags/398f2f84c5b0020f318d1b82c21a45301165907e
@@ -0,0 +1,6 @@
+object 9084eff99f7841502c545ad32fe980528acdbd18
+type commit
+tag 1.7.1
+tagger Hendrik Sattler <post@hendrik-sattler.de> 1374428411 +0200
+
+Releasing OpenOBEX-1.7.1
diff --git a/.gear/tags/list b/.gear/tags/list
new file mode 100644
index 0000000..e5cc09a
--- /dev/null
+++ b/.gear/tags/list
@@ -0,0 +1 @@
+398f2f84c5b0020f318d1b82c21a45301165907e 1.7.1
diff --git a/CMakeLists.txt b/CMakeLists.txt
index cd5a20c..8c63427 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,5 +1,8 @@
 cmake_minimum_required ( VERSION 2.8.5 FATAL_ERROR )
 
+set ( CMAKE_POLICY_DEFAULT_CMP0022 OLD )
+cmake_policy ( VERSION 2.8.5 )
+
 project ( openobex C )
 
 #
@@ -35,7 +38,7 @@ include ( GNUInstallDirs )
 
 # This module currently expects C++ to be enabled in CMake-2.8.10.
 include ( GenerateExportHeader )
-add_compiler_export_flags ( COMPILER_FLAG_VISIBILITY )
+add_compiler_export_flags ( C )
 
 #
 # define how to build libraries
diff --git a/CMakeModules/GenerateExportHeader.cmake b/CMakeModules/GenerateExportHeader.cmake
index 1f26bf0..8547048 100644
--- a/CMakeModules/GenerateExportHeader.cmake
+++ b/CMakeModules/GenerateExportHeader.cmake
@@ -374,16 +374,9 @@ function(GENERATE_EXPORT_HEADER TARGET_LIBRARY)
   _do_generate_export_header(${TARGET_LIBRARY} ${ARGN})
 endfunction()
 
-function(add_compiler_export_flags)
-  if(DEFINED CMAKE_CXX_COMPILER)
-    _test_compiler_hidden_visibility(CXX)
-    _test_compiler_has_deprecated(CXX)
-  elseif(DEFINED CMAKE_C_COMPILER)
-    _test_compiler_hidden_visibility(C)
-    _test_compiler_has_deprecated(C)
-  else()
-    message ( FATAL_ERROR "No supported language enabled." )
-  endif()
+function(add_compiler_export_flags lang)
+  _test_compiler_hidden_visibility(lang)
+  _test_compiler_has_deprecated(lang)
 
   if(NOT (USE_COMPILER_HIDDEN_VISIBILITY AND COMPILER_HAS_HIDDEN_VISIBILITY))
     # Just return if there are no flags to add.
@@ -392,15 +385,15 @@ function(add_compiler_export_flags)
 
   set (EXTRA_FLAGS "-fvisibility=hidden")
 
-  if(COMPILER_HAS_HIDDEN_INLINE_VISIBILITY)
+  if(lang STREQUAL "CXX" AND COMPILER_HAS_HIDDEN_INLINE_VISIBILITY)
     set (EXTRA_FLAGS "${EXTRA_FLAGS} -fvisibility-inlines-hidden")
   endif()
 
   # Either return the extra flags needed in the supplied argument, or to the
   # CMAKE_CXX_FLAGS if no argument is supplied.
-  if(ARGV0)
-    set(${ARGV0} "${EXTRA_FLAGS}" PARENT_SCOPE)
+  if(ARGV1)
+    set(${ARGV1} "${EXTRA_FLAGS}" PARENT_SCOPE)
   else()
-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_FLAGS}" PARENT_SCOPE)
+    set(CMAKE_${lang}_FLAGS "${CMAKE_${lang}_FLAGS} ${EXTRA_FLAGS}" PARENT_SCOPE)
   endif()
 endfunction()
diff --git a/include/openobex/obex_const.h b/include/openobex/obex_const.h
index 63d9698..beb372c 100644
--- a/include/openobex/obex_const.h
+++ b/include/openobex/obex_const.h
@@ -184,6 +184,10 @@ enum obex_event {
 	OBEX_EV_UNEXPECTED = 10,
 	/** First packet of an incoming request has been parsed */
 	OBEX_EV_REQCHECK = 11,
+	/** A Continue response was received and a new request is about to be sent.
+	 *  CancelRequest() can be used to stop the request processing.
+	 */
+	OBEX_EV_CONTINUE = 12,
 };
 
 /* For OBEX_Init() */
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index b8f068e..8ebcd39 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -8,7 +8,6 @@ set ( openobex_PROPERTIES
   VERSION
   SOVERSION
   COMPILE_DEFINITIONS
-  COMPILE_FLAGS
   LINK_FLAGS
 )
 
@@ -132,7 +131,6 @@ if ( OPENOBEX_USB )
   )
 endif ( OPENOBEX_USB )
 
-set ( openobex_COMPILE_FLAGS "${openobex_COMPILE_FLAGS} ${COMPILER_FLAG_VISIBILITY}" )
 set ( openobex_LINK_FLAGS "${openobex_LINK_FLAGS} ${LINKER_FLAG_NOUNDEFINED}" )
 
 if ( WIN32 )
diff --git a/lib/api.c b/lib/api.c
index e1956fa..c8cfcb1 100644
--- a/lib/api.c
+++ b/lib/api.c
@@ -1036,7 +1036,7 @@ int CALLAPI IrOBEX_TransportConnect(obex_t *self, const char *service)
 
 	err = OBEX_EnumerateInterfaces(self);
 	if (err <= 0)
-		return err;
+		return -1;
 
 	intf = OBEX_GetInterfaceByIndex(self, 0);
 	intf->irda.service = service;
diff --git a/lib/obex_client.c b/lib/obex_client.c
index 75868aa..f5b0f5a 100644
--- a/lib/obex_client.c
+++ b/lib/obex_client.c
@@ -188,7 +188,18 @@ static result_t obex_client_response_rx(obex_t *self)
 
 	/* Are we done yet? */
 	if (rsp == OBEX_RSP_CONTINUE) {
+		enum obex_cmd cmd = self->object->cmd;
+
 		DEBUG(3, "Continue...\n");
+		obex_deliver_event(self, OBEX_EV_CONTINUE, cmd, rsp, false);
+
+		/* Return if the user cancelled the request without sending ABORT.
+		 * If ABORT is being sent, we continue as usual and let the normal
+		 * tx_prepare() handle it.
+		 */
+		if (self->object == NULL)
+			return RESULT_SUCCESS;
+
 		self->substate = SUBSTATE_TX_PREPARE;
 		return obex_client_response_tx_prepare(self);
 
diff --git a/lib/obex_object.c b/lib/obex_object.c
index 9bac04a..7c230cd 100644
--- a/lib/obex_object.c
+++ b/lib/obex_object.c
@@ -196,15 +196,20 @@ int obex_object_addheader(obex_t *self, obex_object_t *object, uint8_t hi,
 	if (id == OBEX_HDR_ID_BODY) {
 		if (flags & OBEX_FL_STREAM_DATAEND) {
 			/* End of stream marker */
-			if (object->body == NULL)
-				return -1;
-			/* Set the remaining data on the BODY header... */
-			obex_hdr_set_data(object->body, hv.bs, hv_size);
-			obex_hdr_stream_finish(object->body);
-			object->body = NULL;
-			/* ...and add the BODY_END header to the end */
-			hdr = obex_hdr_ptr_create(OBEX_HDR_ID_BODY_END,
-						  OBEX_HDR_TYPE_BYTES, NULL, 0);
+			if (object->body == NULL) {
+				/* A body with a single chunk. */
+				hdr = obex_hdr_ptr_create(OBEX_HDR_ID_BODY_END, OBEX_HDR_TYPE_BYTES, hv.bs, hv_size);
+				hdr = obex_hdr_stream_create(self, hdr);
+				obex_hdr_stream_finish(hdr);
+			} else {
+				/* Set the remaining data on the BODY header... */
+				obex_hdr_set_data(object->body, hv.bs, hv_size);
+				obex_hdr_stream_finish(object->body);
+				object->body = NULL;
+				/* ...and add the BODY_END header to the end */
+				hdr = obex_hdr_ptr_create(OBEX_HDR_ID_BODY_END,
+							  OBEX_HDR_TYPE_BYTES, NULL, 0);
+			}
 			ret = 1;
 			goto out;
 
diff --git a/lib/transport/irobex.c b/lib/transport/irobex.c
index b68a8fc..64a329c 100644
--- a/lib/transport/irobex.c
+++ b/lib/transport/irobex.c
@@ -184,6 +184,7 @@ static bool irobex_select_interface(obex_t *self, obex_interface_t *intf)
 	/* local address */
 	memset(&addr, 0, sizeof(addr));
 	addr.sir_family = AF_IRDA;
+	addr.sir_lsap_sel = LSAP_ANY;
 #ifndef _WIN32
 	addr.sir_addr = intf->irda.local;
 #else
diff --git a/libopenobex.spec b/libopenobex.spec
new file mode 100644
index 0000000..656c0cc
--- /dev/null
+++ b/libopenobex.spec
@@ -0,0 +1,118 @@
+Name: libopenobex
+Version: 1.7.1
+Release: alt2
+
+Summary: OpenOBEX - Free implementation of the Object Exchange protocol
+License: LGPL
+Group: System/Libraries
+URL: http://openobex.sourceforge.net
+Packager: Valery Inozemtsev <shrek@altlinux.ru>
+
+Source: %name-%version.tar
+Patch: %name-%version-%release.patch
+
+BuildRequires: gcc-c++ cmake libbluez-devel libusb-devel libudev-devel
+BuildRequires: doxygen xmlto
+
+%description
+OpenOBEX - Free implementation of the Object Exchange protocol
+
+%package devel
+Summary: Development files of OpenOBEX libraries
+Group: Development/C
+Requires: %name = %version-%release
+
+%description devel
+This package contains development files of Open OBEX library
+
+%define _pkgdocdir %_docdir/%name-%version
+
+%prep
+%setup
+%patch -p1
+# fix udev rule
+#subst 's|GROUP=\"plugdev\"|ENV{ID_MEDIA_PLAYER}="1"|' udev/openobex.rules.in
+sed -i 's|MODE="660", GROUP="plugdev"|TAG+="uaccess"|' udev/openobex.rules.in
+
+%build
+%cmake -DCMAKE_INSTALL_DOCDIR=%_pkgdocdir
+%cmake_build
+
+%install
+%cmakeinstall_std
+cp AUTHORS ChangeLog README %buildroot%_pkgdocdir
+
+%files
+%_sbindir/obex-check-device
+%_libdir/*.so.*
+%_udevrulesdir/60-openobex.rules
+%doc %_pkgdocdir/AUTHORS
+%doc %_pkgdocdir/ChangeLog
+%doc %_pkgdocdir/README
+
+%files devel
+%_includedir/*
+%_libdir/*.so
+%_pkgconfigdir/*.pc
+%_libdir/cmake/OpenObex-1.7.1/openobex-config-version.cmake
+%_libdir/cmake/OpenObex-1.7.1/openobex-config.cmake
+%_libdir/cmake/OpenObex-1.7.1/openobex-target-release.cmake
+%_libdir/cmake/OpenObex-1.7.1/openobex-target.cmake
+%doc %_pkgdocdir/html/
+
+%changelog
+* Mon Jan 19 2015 Yuri N. Sedunov <aris@altlinux.org> 1.7.1-alt2
+- fixed incorrect udev.rules
+
+* Sat Dec 06 2014 Yuri N. Sedunov <aris@altlinux.org> 1.7.1-alt1
+- 1.7.1
+
+* Thu Aug 09 2012 Valery Inozemtsev <shrek@altlinux.ru> 1.6-alt1
+- 1.6
+
+* Sun Dec 05 2010 Valery Inozemtsev <shrek@altlinux.ru> 1.5-alt3
+- updated build dependencies
+
+* Thu Jun 11 2009 Valery Inozemtsev <shrek@altlinux.ru> 1.5-alt2
+- updated build dependencies
+
+* Mon Mar 23 2009 Pavlov Konstantin <thresh@altlinux.ru> 1.5-alt1
+- 1.5 release.
+
+* Thu Nov 20 2008 Pavlov Konstantin <thresh@altlinux.ru> 1.4-alt1
+- 1.4 release.
+- Removed %%post/%%postun stuff.
+
+* Mon Jan 28 2008 Pavlov Konstantin <thresh@altlinux.ru> 1.3-alt2
+- Fix #14024.
+
+* Fri Aug 11 2006 Pavlov Konstantin <thresh@altlinux.ru> 1.3-alt1
+- 1.3 version.
+- Added libusb-devel, pkg-config and xmlto to BuildRequires.
+- Removed -config from %%files section as it doesn't exist anymore.
+- Rewrote %%descriptions and %%summaries.
+- Build docs (thx vsu@).
+- Substited Copyright tag with License.
+- Fixed Requires.
+- s/relaname/realname.
+- Fixed %%post and %%postun.
+- Added a switch to deal with static. Default: off.
+
+* Wed Feb 01 2006 Anton Farygin <rider@altlinux.ru> 1.0.1-alt2.1
+- NMU: fixed build for x86_64 (added autoreconf into build section)
+
+* Fri Dec 12 2003 Grigory Milev <week@altlinux.ru> 1.0.1-alt2
+- remove *.la files due policy
+
+* Wed Oct 22 2003 Grigory Milev <week@altlinux.ru> 1.0.1-alt1
+- new version released
+
+* Thu Apr 17 2003 Grigory Milev <week@altlinux.ru> 1.0.0-alt2
+- move static devellibraries to separate package
+
+* Tue Jan 21 2003 Grigory Milev <week@altlinux.ru> 1.0.0-alt1
+- new version released
+
+* Tue Dec 10 2002 Grigory Milev <week@altlinux.ru> 0.9.8-alt1
+- Initial build
+
 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009