Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/2] gesftpserver: needs mmu
@ 2013-02-14 13:03 Gustavo Zacarias
  2013-02-14 13:03 ` [Buildroot] [PATCH 2/2] libcurl: packages that use it need mmu also Gustavo Zacarias
  2013-02-17 21:57 ` [Buildroot] [PATCH 1/2] gesftpserver: needs mmu Peter Korsgaard
  0 siblings, 2 replies; 7+ messages in thread
From: Gustavo Zacarias @ 2013-02-14 13:03 UTC (permalink / raw)
  To: buildroot

Fixes:
http://autobuild.buildroot.net/results/23298ba81896e473e903c17e12ad547049b8d348

Also fix the sort order.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
 package/Config.in              | 2 +-
 package/gesftpserver/Config.in | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/package/Config.in b/package/Config.in
index b6755d7..e65396a 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -637,6 +637,7 @@ source "package/dnsmasq/Config.in"
 source "package/dropbear/Config.in"
 source "package/ebtables/Config.in"
 source "package/ethtool/Config.in"
+source "package/gesftpserver/Config.in"
 source "package/heirloom-mailx/Config.in"
 source "package/hiawatha/Config.in"
 source "package/hostapd/Config.in"
@@ -653,7 +654,6 @@ source "package/ipsec-tools/Config.in"
 source "package/ipset/Config.in"
 source "package/iptables/Config.in"
 source "package/iw/Config.in"
-source "package/gesftpserver/Config.in"
 source "package/kismet/Config.in"
 source "package/lighttpd/Config.in"
 source "package/links/Config.in"
diff --git a/package/gesftpserver/Config.in b/package/gesftpserver/Config.in
index bc38c51..57bbf29 100644
--- a/package/gesftpserver/Config.in
+++ b/package/gesftpserver/Config.in
@@ -3,6 +3,7 @@ config BR2_PACKAGE_GESFTPSERVER
 	select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
 	depends on BR2_USE_WCHAR
 	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_USE_MMU # fork()
 	help
 	  Green End SFTP Server
 
-- 
1.7.12.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 2/2] libcurl: packages that use it need mmu also
  2013-02-14 13:03 [Buildroot] [PATCH 1/2] gesftpserver: needs mmu Gustavo Zacarias
@ 2013-02-14 13:03 ` Gustavo Zacarias
  2013-02-14 13:47   ` Thomas Petazzoni
  2013-02-17 21:57 ` [Buildroot] [PATCH 1/2] gesftpserver: needs mmu Peter Korsgaard
  1 sibling, 1 reply; 7+ messages in thread
From: Gustavo Zacarias @ 2013-02-14 13:03 UTC (permalink / raw)
  To: buildroot

Fixes:
http://autobuild.buildroot.net/results/b812b8931a7291ea8969c9818aea1044ee302c20

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
 package/collectd/Config.in                   | 6 ++++++
 package/feh/Config.in                        | 1 +
 package/midori/Config.in                     | 1 +
 package/multimedia/gst-plugins-bad/Config.in | 1 +
 package/multimedia/mpd/Config.in             | 1 +
 package/multimedia/vorbis-tools/Config.in    | 1 +
 package/rtorrent/Config.in                   | 1 +
 package/transmission/Config.in               | 1 +
 package/webkit/Config.in                     | 1 +
 9 files changed, 14 insertions(+)

diff --git a/package/collectd/Config.in b/package/collectd/Config.in
index 74419f6..0fbe3f7 100644
--- a/package/collectd/Config.in
+++ b/package/collectd/Config.in
@@ -69,6 +69,7 @@ comment "Select at least one for collectd to be useful"
 config BR2_PACKAGE_COLLECTD_APACHE
 	bool "apache"
 	select BR2_PACKAGE_LIBCURL
+	depends on BR2_USE_MMU # libcurl
 	help
 	  Collects Apache's mod_status information.
 
@@ -85,6 +86,7 @@ config BR2_PACKAGE_COLLECTD_BATTERY
 config BR2_PACKAGE_COLLECTD_BIND
 	bool "bind"
 	select BR2_PACKAGE_LIBCURL
+	depends on BR2_USE_MMU # libcurl
 	select BR2_PACKAGE_LIBXML2
 	help
 	  Collects BIND DNS statistics.
@@ -112,6 +114,7 @@ config BR2_PACKAGE_COLLECTD_CPUFREQ
 config BR2_PACKAGE_COLLECTD_CURL
 	bool "curl"
 	select BR2_PACKAGE_LIBCURL
+	depends on BR2_USE_MMU # libcurl
 	help
 	  Uses libcurl to read files and then parses them according
 	  to the configuration.
@@ -120,6 +123,7 @@ config BR2_PACKAGE_COLLECTD_CURL_JSON
 	bool "curl-json"
 	select BR2_PACKAGE_LIBCURL
 	select BR2_PACKAGE_YAJL
+	depends on BR2_USE_MMU # libcurl
 	help
 	  Queries JSON data using the cURL library and parses it
 	  according to the user's configuration using YAJL.
@@ -128,6 +132,7 @@ config BR2_PACKAGE_COLLECTD_CURL_XML
 	bool "curl-xml"
 	select BR2_PACKAGE_LIBCURL
 	select BR2_PACKAGE_LIBXML2
+	depends on BR2_USE_MMU # libcurl
 	help
 	  Reads files using libcurl and parses it as XML.
 
@@ -382,6 +387,7 @@ config BR2_PACKAGE_COLLECTD_UNIXSOCK
 config BR2_PACKAGE_COLLECTD_WRITEHTTP
 	bool "writehttp"
 	select BR2_PACKAGE_LIBCURL
+	depends on BR2_USE_MMU # libcurl
 	help
 	  Sends values collected to a web-server using HTTP POST and PUTVAL.
 
diff --git a/package/feh/Config.in b/package/feh/Config.in
index 31e7239..e7c3b7a 100644
--- a/package/feh/Config.in
+++ b/package/feh/Config.in
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_FEH
 	bool "feh"
 	depends on BR2_PACKAGE_XORG7
+	depends on BR2_USE_MMU # libcurl
 	select BR2_PACKAGE_XLIB_LIBXINERAMA
 	select BR2_PACKAGE_XLIB_LIBXT
 	select BR2_PACKAGE_IMLIB2_PNG
diff --git a/package/midori/Config.in b/package/midori/Config.in
index 41f4515..18d37fa 100644
--- a/package/midori/Config.in
+++ b/package/midori/Config.in
@@ -7,6 +7,7 @@ config BR2_PACKAGE_MIDORI
 	depends on BR2_PACKAGE_LIBGTK2
 	depends on BR2_INSTALL_LIBSTDCPP # webkit
 	depends on BR2_USE_WCHAR	 # webkit
+	depends on BR2_USE_MMU # webkit->libcurl
 	help
 	  Midori is a lightweight web browser based on WebKit
 
diff --git a/package/multimedia/gst-plugins-bad/Config.in b/package/multimedia/gst-plugins-bad/Config.in
index 370259b..e9927d2 100644
--- a/package/multimedia/gst-plugins-bad/Config.in
+++ b/package/multimedia/gst-plugins-bad/Config.in
@@ -258,6 +258,7 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_CDAUDIO
 config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_CURL
 	bool "curl"
 	select BR2_PACKAGE_LIBCURL
+	depends on BR2_USE_MMU # libcurl
 
 config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_DIRECTFB
 	bool "directfb"
diff --git a/package/multimedia/mpd/Config.in b/package/multimedia/mpd/Config.in
index 6e5c690..b8dd31a 100644
--- a/package/multimedia/mpd/Config.in
+++ b/package/multimedia/mpd/Config.in
@@ -55,6 +55,7 @@ config BR2_PACKAGE_MPD_BZIP2
 config BR2_PACKAGE_MPD_CURL
 	bool "curl"
 	select BR2_PACKAGE_LIBCURL
+	depends on BR2_USE_MMU # libcurl
 	help
 	  Enable curl streaming (http) support.
 
diff --git a/package/multimedia/vorbis-tools/Config.in b/package/multimedia/vorbis-tools/Config.in
index 6092e01..6442ffb 100644
--- a/package/multimedia/vorbis-tools/Config.in
+++ b/package/multimedia/vorbis-tools/Config.in
@@ -4,6 +4,7 @@ config BR2_PACKAGE_VORBIS_TOOLS
 	select BR2_PACKAGE_LIBOGG
 	select BR2_PACKAGE_LIBVORBIS
 	select BR2_PACKAGE_LIBCURL
+	depends on BR2_USE_MMU # libcurl
 	help
 	  Standalone player, encoder and decoder for Ogg format files.
 
diff --git a/package/rtorrent/Config.in b/package/rtorrent/Config.in
index 142ff8b..ae94b0d 100644
--- a/package/rtorrent/Config.in
+++ b/package/rtorrent/Config.in
@@ -2,6 +2,7 @@ config BR2_PACKAGE_RTORRENT
 	bool "rtorrent"
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_USE_WCHAR
+	depends on BR2_USE_MMU # libcurl
 	select BR2_PACKAGE_LIBCURL
 	select BR2_PACKAGE_LIBSIGC
 	select BR2_PACKAGE_LIBTORRENT
diff --git a/package/transmission/Config.in b/package/transmission/Config.in
index 9284075..0362eb0 100644
--- a/package/transmission/Config.in
+++ b/package/transmission/Config.in
@@ -2,6 +2,7 @@ config BR2_PACKAGE_TRANSMISSION
 	bool "transmission"
 	depends on BR2_INET_IPV6
 	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_USE_MMU # libcurl
 	select BR2_PACKAGE_ZLIB
 	select BR2_PACKAGE_OPENSSL
 	select BR2_PACKAGE_LIBCURL
diff --git a/package/webkit/Config.in b/package/webkit/Config.in
index 34071e4..02a1a15 100644
--- a/package/webkit/Config.in
+++ b/package/webkit/Config.in
@@ -3,6 +3,7 @@ config BR2_PACKAGE_WEBKIT
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_USE_WCHAR
 	depends on BR2_PACKAGE_LIBGTK2
+	depends on BR2_USE_MMU # libcurl
 	select BR2_PACKAGE_ICU
 	select BR2_PACKAGE_LIBCURL
 	select BR2_PACKAGE_LIBXML2
-- 
1.7.12.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 2/2] libcurl: packages that use it need mmu also
  2013-02-14 13:03 ` [Buildroot] [PATCH 2/2] libcurl: packages that use it need mmu also Gustavo Zacarias
@ 2013-02-14 13:47   ` Thomas Petazzoni
  2013-02-14 13:50     ` [Buildroot] [PATCH] libcurl: re-enable on non-MMU platforms Thomas Petazzoni
  2013-02-14 13:50     ` [Buildroot] [PATCH 2/2] libcurl: packages that use it need mmu also Gustavo Zacarias
  0 siblings, 2 replies; 7+ messages in thread
From: Thomas Petazzoni @ 2013-02-14 13:47 UTC (permalink / raw)
  To: buildroot

Dear Gustavo Zacarias,

On Thu, 14 Feb 2013 10:03:01 -0300, Gustavo Zacarias wrote:
> Fixes:
> http://autobuild.buildroot.net/results/b812b8931a7291ea8969c9818aea1044ee302c20
> 
> Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>

I don't agree. I believe the libcurl package should not depend on
BR2_USE_MMU instead. I have a patch that I'll send as a reply to this
e-mail.

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH] libcurl: re-enable on non-MMU platforms
  2013-02-14 13:47   ` Thomas Petazzoni
@ 2013-02-14 13:50     ` Thomas Petazzoni
  2013-02-17 22:02       ` Peter Korsgaard
  2013-02-14 13:50     ` [Buildroot] [PATCH 2/2] libcurl: packages that use it need mmu also Gustavo Zacarias
  1 sibling, 1 reply; 7+ messages in thread
From: Thomas Petazzoni @ 2013-02-14 13:50 UTC (permalink / raw)
  To: buildroot

In 9229b82d6326ea425a258b91a9f0157ef6b223b7 ('libcurl: needs MMU'),
the libcurl package was disabled on non-MMU systems, due to the usage
of the fork() function in the library.

However, a deeper inspection reveals that fork() is only used in the
implementation of NTLM, an obscure, undocumented, Microsoft specific
authentication method that apparently isn't common anymore. See
http://curl.haxx.se/docs/manpage.html#--ntlm.

Therefore, this commit re-enables libcurl on non-MMU systems by
explicitly disabling the NTLM support. If someone ever needs NTLM
support in Buildroot's libcurl package, it will always be time to add
a libcurl sub-option to enable it.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/libcurl/Config.in  |    1 -
 package/libcurl/libcurl.mk |    8 +++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/package/libcurl/Config.in b/package/libcurl/Config.in
index 10ee0e4..1d6d08e 100644
--- a/package/libcurl/Config.in
+++ b/package/libcurl/Config.in
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_LIBCURL
 	bool "libcurl"
-	depends on BR2_USE_MMU # Uses fork()
 	help
 	  cURL is a tool for getting files from FTP, HTTP, Gopher, Telnet,
 	  and Dict servers, using any of the supported protocols.
diff --git a/package/libcurl/libcurl.mk b/package/libcurl/libcurl.mk
index 38ca854..a631953 100644
--- a/package/libcurl/libcurl.mk
+++ b/package/libcurl/libcurl.mk
@@ -10,7 +10,13 @@ LIBCURL_SITE = http://curl.haxx.se/download
 LIBCURL_LICENSE = ICS
 LIBCURL_LICENSE_FILES = COPYING
 LIBCURL_INSTALL_STAGING = YES
-LIBCURL_CONF_OPT = --disable-verbose --disable-manual --enable-hidden-symbols
+
+# We disable NTLM support because it uses fork(), which doesn't work
+# on non-MMU platforms. Moreover, this authentication method is
+# probably almost never used. See
+# http://curl.haxx.se/docs/manpage.html#--ntlm.
+LIBCURL_CONF_OPT = --disable-verbose --disable-manual \
+	--enable-hidden-symbols --disable-ntlm-wb
 LIBCURL_CONFIG_SCRIPTS = curl-config
 
 ifeq ($(BR2_PACKAGE_OPENSSL),y)
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 2/2] libcurl: packages that use it need mmu also
  2013-02-14 13:47   ` Thomas Petazzoni
  2013-02-14 13:50     ` [Buildroot] [PATCH] libcurl: re-enable on non-MMU platforms Thomas Petazzoni
@ 2013-02-14 13:50     ` Gustavo Zacarias
  1 sibling, 0 replies; 7+ messages in thread
From: Gustavo Zacarias @ 2013-02-14 13:50 UTC (permalink / raw)
  To: buildroot

On 02/14/2013 10:47 AM, Thomas Petazzoni wrote:
> I don't agree. I believe the libcurl package should not depend on
> BR2_USE_MMU instead. I have a patch that I'll send as a reply to this
> e-mail.

Cool, i don't have much time to look into it so i went the fast route.
Careful though, 7.28.1 is security vulnerable and a bump to 7.29.0 is
necessary.
That said the bump doesn't build since it doesn't like macro definitions
in CFLAGS, it's probably safer to just patch the security vulnerability
since moving over the largefile defs to CPPFLAGS isn't probably clean at
this point in the upcoming release.
Regards.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/2] gesftpserver: needs mmu
  2013-02-14 13:03 [Buildroot] [PATCH 1/2] gesftpserver: needs mmu Gustavo Zacarias
  2013-02-14 13:03 ` [Buildroot] [PATCH 2/2] libcurl: packages that use it need mmu also Gustavo Zacarias
@ 2013-02-17 21:57 ` Peter Korsgaard
  1 sibling, 0 replies; 7+ messages in thread
From: Peter Korsgaard @ 2013-02-17 21:57 UTC (permalink / raw)
  To: buildroot

>>>>> "Gustavo" == Gustavo Zacarias <gustavo@zacarias.com.ar> writes:

 Gustavo> Fixes:
 Gustavo> http://autobuild.buildroot.net/results/23298ba81896e473e903c17e12ad547049b8d348

 Gustavo> Also fix the sort order.

Committed, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH] libcurl: re-enable on non-MMU platforms
  2013-02-14 13:50     ` [Buildroot] [PATCH] libcurl: re-enable on non-MMU platforms Thomas Petazzoni
@ 2013-02-17 22:02       ` Peter Korsgaard
  0 siblings, 0 replies; 7+ messages in thread
From: Peter Korsgaard @ 2013-02-17 22:02 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> In 9229b82d6326ea425a258b91a9f0157ef6b223b7 ('libcurl: needs MMU'),
 Thomas> the libcurl package was disabled on non-MMU systems, due to the usage
 Thomas> of the fork() function in the library.

 Thomas> However, a deeper inspection reveals that fork() is only used in the
 Thomas> implementation of NTLM, an obscure, undocumented, Microsoft specific
 Thomas> authentication method that apparently isn't common anymore. See
 Thomas> http://curl.haxx.se/docs/manpage.html#--ntlm.

Yeah, tell me about it - I know of a certain company using it :/

Committed, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2013-02-17 22:02 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-14 13:03 [Buildroot] [PATCH 1/2] gesftpserver: needs mmu Gustavo Zacarias
2013-02-14 13:03 ` [Buildroot] [PATCH 2/2] libcurl: packages that use it need mmu also Gustavo Zacarias
2013-02-14 13:47   ` Thomas Petazzoni
2013-02-14 13:50     ` [Buildroot] [PATCH] libcurl: re-enable on non-MMU platforms Thomas Petazzoni
2013-02-17 22:02       ` Peter Korsgaard
2013-02-14 13:50     ` [Buildroot] [PATCH 2/2] libcurl: packages that use it need mmu also Gustavo Zacarias
2013-02-17 21:57 ` [Buildroot] [PATCH 1/2] gesftpserver: needs mmu Peter Korsgaard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox