Re: [PATCH] platform: move link_get_user_ipv6ll_enabled() to nm-platform-linux
Hi Lubo, > It uses Linux specific functionality. > Furthermore, the IN6_ADDR_GEN_MODE_NONE macro might not be available in > nm-platform which breaks the build. Yes, I was a bit confused why it's in nm-platform.c. > does this look good to you? Tested on tarball 1.0.4 (as I cannot easily test it on git), works like a charm. Thanks a lot for a quick patch. Could you also push it into nm-1-0 branch? Thanks. Kind regards, Petr ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [PATCH] Fix build error for kernels headers < 3.17
Hi there, > platform/nm-platform.c:974:71: error: 'IN6_ADDR_GEN_MODE_NONE' undeclared > (first use in this function) > return _nm_platform_uint8_inv (pllink->inet6_addr_gen_mode_inv) == > IN6_ADDR_GEN_MODE_NONE; > Based on logic from 37f11fbd > Signed-off-by: Petr Vorel > --- > src/platform/nm-platform.c | 6 ++ > 1 file changed, 6 insertions(+) > diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c > index 8803377..14e5726 100644 > --- a/src/platform/nm-platform.c > +++ b/src/platform/nm-platform.c > @@ -39,6 +39,12 @@ > #include "nm-enum-types.h" > #include "nm-core-internal.h" > +#if HAVE_LIBNL_INET6_ADDR_GEN_MODE && HAVE_KERNEL_INET6_ADDR_GEN_MODE > +#include > +#else > +#define IN6_ADDR_GEN_MODE_NONE 1 > +#endif > + > #define ADDRESS_LIFETIME_PADDING 5 > G_STATIC_ASSERT (sizeof ( ((NMPlatformLink *) NULL)->addr.data ) == > NM_UTILS_HWADDR_LEN_MAX); There might be better place to add this to avoid duplicity. Isn't there any compatibility like header? Kind regards, Petr ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
[PATCH] Fix build error for kernels headers < 3.17
platform/nm-platform.c:974:71: error: 'IN6_ADDR_GEN_MODE_NONE' undeclared (first use in this function) return _nm_platform_uint8_inv (pllink->inet6_addr_gen_mode_inv) == IN6_ADDR_GEN_MODE_NONE; Based on logic from 37f11fbd Signed-off-by: Petr Vorel --- src/platform/nm-platform.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c index 8803377..14e5726 100644 --- a/src/platform/nm-platform.c +++ b/src/platform/nm-platform.c @@ -39,6 +39,12 @@ #include "nm-enum-types.h" #include "nm-core-internal.h" +#if HAVE_LIBNL_INET6_ADDR_GEN_MODE && HAVE_KERNEL_INET6_ADDR_GEN_MODE +#include +#else +#define IN6_ADDR_GEN_MODE_NONE 1 +#endif + #define ADDRESS_LIFETIME_PADDING 5 G_STATIC_ASSERT (sizeof ( ((NMPlatformLink *) NULL)->addr.data ) == NM_UTILS_HWADDR_LEN_MAX); -- 1.8.0 ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [PATCH v2 1/2] Allow building without gtk-doc installed
Hi Lubomir, > This doesn't look good to me. > autogen.sh is a maintainer tool and we pretty much always want to > create tarballs with GTK-doc. > Why don't you just use autoreconf (with -f and -i) instead of > autogen.sh when doing builds off Git? Thanks for the tip, but it actually does not work as there is a dependency (as I reported it before): $ autoreconf -f -i docs/api/Makefile.am:28: error: ENABLE_GTK_DOC does not appear in AM_CONDITIONAL automake: error: cannot open < gtk-doc.make: No such file or directory autoreconf: automake failed with exit status: 1 I know this is minor / unimportant issue as not many people will build without GTK-doc. But still I'd prefer either to require it (to explain user what's wrong - first version of my patch) or better allow build without it and just warn user (second version of the patch; there might be better way of doing it than my quirks). Kind regards, Petr ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [PATCH] systemd-dhcp: fix build with Linux <= 3.2.0 headers
Hi Thomas, > Lubomir backported this patch: > http://cgit.freedesktop.org/NetworkManager/NetworkManager/commit/?id=7f84150e9f6aa7e900d70178e0fc0acc6cfba651 I'm sorry, I don't know how I could have overlooked it. Kind regards, Petr ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
[PATCH v2 1/2] Allow building without gtk-doc installed
This requires creating minimal gtk-doc.make and check for GTK_DOC_CHECK availability in configure.ac. Signed-off-by: Petr Vorel --- autogen.sh | 14 +- configure.ac | 7 ++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/autogen.sh b/autogen.sh index 5ec9a5a..a7e1c17 100755 --- a/autogen.sh +++ b/autogen.sh @@ -22,7 +22,19 @@ PKG_NAME=NetworkManager cd $srcdir -gtkdocize +GTKDOCIZE=`which gtkdocize` || true +if test -z $GTKDOCIZE; then +echo "**Warning**: No GTK-Doc found, documentation won't be generated" >&2 +echo " and 'make dist' and 'make distcheck' will not work." >&2 + +# create minimal gtk-doc.make if missing as we depend on it +if test -f gtk-doc.make; then :; else + printf "EXTRA_DIST = \nCLEANFILES = \n" > gtk-doc.make +fi +else +gtkdocize || exit $? +fi + autopoint --force AUTOPOINT='intltoolize --automake --copy' autoreconf --force --install --verbose diff --git a/configure.ac b/configure.ac index e1a1917..c776d3d 100644 --- a/configure.ac +++ b/configure.ac @@ -898,7 +898,12 @@ AS_IF([test "$with_valgrind" != "no"], AC_SUBST(VALGRIND_RULES, [])) AM_CONDITIONAL(WITH_VALGRIND, test "${with_valgrind}" != "no") -GTK_DOC_CHECK(1.0) +# Check for GTK_DOC_CHECK availability. The GTK_DOC_CHECK invocation +# must be on its own line, gtkdocize relies on it +m4_ifdef([GTK_DOC_CHECK], [ +GTK_DOC_CHECK([1.0]) +]) +AM_CONDITIONAL(ENABLE_GTK_DOC, test "$enable_gtk_doc" = "yes") # check for pregenerated manpages to be installed install_pregen_manpages=no -- 2.1.4 ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
[PATCH v2 2/2] autogen.sh: print errors to stderr, printf instead echo -n
Signed-off-by: Petr Vorel --- autogen.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/autogen.sh b/autogen.sh index a7e1c17..b4394bf 100755 --- a/autogen.sh +++ b/autogen.sh @@ -15,8 +15,8 @@ PKG_NAME=NetworkManager (test -f $srcdir/configure.ac \ && test -f $srcdir/src/main.c) || { -echo -n "**Error**: Directory "\`$srcdir\'" does not look like the" -echo " top-level $PKG_NAME directory" +printf "**Error**: Directory "\`$srcdir\'" does not look like the" >&2 +echo " top-level $PKG_NAME directory" >&2 exit 1 } -- 2.1.4 ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [PATCH 1/2] autogen.sh: warn if gtkdocize is missing, exit on error
Hi Dan, > Actually, gtkdoc isn't required for the build unless you want to do > 'make dist' or distcheck. So in theory, perhaps we should just warn > about that and continue, instead of erroring out? That's what I intended when I wrote the patch. But autogen.sh depends on gtk-doc.make, which is AFAIK symlink to /usr/share/gtk-doc/data/gtk-doc.make (on my Debian unstable) and this file is from gtkdoc. So in my case autogen.sh without gtkdoc fails: ... docs/api/Makefile.am:28: error: ENABLE_GTK_DOC does not appear in AM_CONDITIONAL automake: error: cannot open < gtk-doc.make: No such file or directory autoreconf: automake failed with exit status: 1 But adding ENABLE_GTK_DOC in AM_CONDITIONAL isn't enough. As code after including gtk-doc.make expect some variables to be set. There are two options: 1) Cairo way: include gtk-doc.make somewhere and use it when missing. Cairo uses instead of gtk-doc.make file Makefile.am.gtk-doc. They use it probably to fix some of their problems, but this also helps to avoid this problem. I don't think it's a good option (needs to synchronize file time to time). 2) Gimp way: create minimal gtk-doc.make file. This looks to me as a better option, so I implement it and send as v2. --force option to autoreconf cause replacing minimal gtk-doc.make with symlink to /usr/share/gtk-doc/data/gtk-doc.make once gtkdoc is installed. > Dan Kind regards, Petr ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [PATCH] systemd-dhcp: fix build with Linux <= 3.2.0 headers
Hi there, > Fixes build on Ubuntu 12.04. > src/dhcp-manager/systemd-dhcp/src/libsystemd-network/dhcp-network.c: In > function '_bind_raw_socket': > src/dhcp-manager/systemd-dhcp/src/libsystemd-network/dhcp-network.c:79:17: > error: 'BPF_XOR' undeclared (first use in this function) > src/dhcp-manager/systemd-dhcp/src/libsystemd-network/dhcp-network.c:79:17: > note: each undeclared identifier is reported only once for each function it > appears in > make[4]: *** [libsystemd_nm_la-dhcp-network.lo] Error 1 > Signed-off-by: Petr Vorel > --- > src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h | 5 + > 1 file changed, 5 insertions(+) > diff --git a/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h > b/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h > index 6d500f4..f8856a1 100644 > --- a/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h > +++ b/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h > @@ -38,6 +38,11 @@ > #include "nm-logging.h" > +/* Missing in Linux 3.2.0, in Ubuntu 12.04 */ > +#ifndef BPF_XOR > +#define BPF_XOR 0xa0 > +#endif > + > static inline guint32 > _slog_level_to_nm (int slevel) > { Please push this patch to branch nm-1-0. It's a build fix created by Lubomir Rintel, pushed to master as 3811a683. Kind regards, Petr ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
[PATCH] systemd-dhcp: fix build with Linux <= 3.2.0 headers
Fixes build on Ubuntu 12.04. src/dhcp-manager/systemd-dhcp/src/libsystemd-network/dhcp-network.c: In function '_bind_raw_socket': src/dhcp-manager/systemd-dhcp/src/libsystemd-network/dhcp-network.c:79:17: error: 'BPF_XOR' undeclared (first use in this function) src/dhcp-manager/systemd-dhcp/src/libsystemd-network/dhcp-network.c:79:17: note: each undeclared identifier is reported only once for each function it appears in make[4]: *** [libsystemd_nm_la-dhcp-network.lo] Error 1 Signed-off-by: Petr Vorel --- src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h | 5 + 1 file changed, 5 insertions(+) diff --git a/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h b/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h index 6d500f4..f8856a1 100644 --- a/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h +++ b/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h @@ -38,6 +38,11 @@ #include "nm-logging.h" +/* Missing in Linux 3.2.0, in Ubuntu 12.04 */ +#ifndef BPF_XOR +#define BPF_XOR 0xa0 +#endif + static inline guint32 _slog_level_to_nm (int slevel) { -- 1.8.0 ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
[PATCH 2/2] autogen.sh: print errors to stderr, printf instead echo -n
Signed-off-by: Petr Vorel --- autogen.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/autogen.sh b/autogen.sh index 86f89cc..085b1ba 100755 --- a/autogen.sh +++ b/autogen.sh @@ -15,8 +15,8 @@ PKG_NAME=NetworkManager (test -f $srcdir/configure.ac \ && test -f $srcdir/src/main.c) || { -echo -n "**Error**: Directory "\`$srcdir\'" does not look like the" -echo " top-level $PKG_NAME directory" +printf "**Error**: Directory "\`$srcdir\'" does not look like the" >&2 +echo " top-level $PKG_NAME directory" >&2 exit 1 } -- 2.1.4 ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
[PATCH 1/2] autogen.sh: warn if gtkdocize is missing, exit on error
Signed-off-by: Petr Vorel --- autogen.sh | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/autogen.sh b/autogen.sh index 5ec9a5a..86f89cc 100755 --- a/autogen.sh +++ b/autogen.sh @@ -22,7 +22,14 @@ PKG_NAME=NetworkManager cd $srcdir -gtkdocize +GTKDOCIZE=`which gtkdocize` || true +if test -z $GTKDOCIZE; then +echo "**Error**: No GTK-Doc found, please install it" >&2 +exit 1 +else +gtkdocize || exit $? +fi + autopoint --force AUTOPOINT='intltoolize --automake --copy' autoreconf --force --install --verbose -- 2.1.4 ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: Cherry-pick 'fix build with Linux 3.2.0 headers' also to branch nm-1-0
Hi Lubo, > I'm wondering -- what is your use case here? The 3.2.0 is rather old > and the internal DHCP client from systemd doesn't work with it. I guess > a distribution shipping a kernel that is this old has some other > components that are too old, such as glib2? My real case is to run it on hybrid - old and heavily patched kernel 2.6.37 + modern user space, arm built with Buildroot. Also GCC is quite old - 4.6.3. I know that some functionality will be missing due to old kernel, but this patch ensures at least build it. Kind regards, Petr ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
Cherry-pick 'fix build with Linux 3.2.0 headers' also to branch nm-1-0
Hi there, could you please cherry-pick commit 22b99e3b 'fix build with Linux 3.2.0 headers' also to branch nm-1-0? It'd be nice to have it in 1.0.4 (not sure if it 1.0.4 is going to be made from master or from nm-1-0). Thanks a lot. Kind regards, Petr ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: NetworkManager kernel and udev/eudev dependency, gcc build dependency
Thanks a lot for the info. > AFAIK, there is no known minimal kernel-version (or minimal required > feature-set). It would to have one. > NM will try to accommodate to missing features and should mostly should > work -- of course, certain features might then not be available (such as > [2]). That's quite good news :-). > Try it and send a bug-report :) Sure :-). I'm going to test it on 2.6.37 with gcc 4.6.3. Kind regards, Petr > > [2] > > http://cgit.freedesktop.org/NetworkManager/NetworkManager/commit/?id=1701a70b9eba0a0bc9db2bc253de352675fac915 ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
NetworkManager kernel and udev/eudev dependency, gcc build dependency
Hi there, Which is a minimal required Linux kernel version and udev/eudev version required to run NetworkManager 1.0? The only info about dependency I found is in LFS doc [1], but it does not say anything about the kernel. As udev version is somehow dependent on kernel I suppose any udev running on supported kernel should be suitable, isn't it? Commit [2] from seems to require kernel >= 3.15-rc5, on the other hand there are some attempts to support older kernels [3]. And how about gcc build dependency? Thanks a lot for any info. Kind regards, Petr [1] http://www.linuxfromscratch.org/blfs/view/svn/basicnet/networkmanager.html [2] http://cgit.freedesktop.org/NetworkManager/NetworkManager/commit/?id=1701a70b9eba0a0bc9db2bc253de352675fac915 [3] http://cgit.freedesktop.org/NetworkManager/NetworkManager/commit/?id=4d675ce0fcef7f33311258df94e98f31dab15680 ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
[PATCH 1/1] examples: bash: print errors int stderr
+ whitespace Signed-off-by: Petr Vorel --- examples/shell/active-wifi.sh | 2 +- examples/shell/disconnect-device.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/examples/shell/active-wifi.sh b/examples/shell/active-wifi.sh index 1c9466b..2ff5419 100755 --- a/examples/shell/active-wifi.sh +++ b/examples/shell/active-wifi.sh @@ -76,7 +76,7 @@ show_active_ssids() BSSID=`get_property $ACTIVE_AP $ACCESS_POINT_IFACE "HwAddress"` echo "Device '$INTERFACE' is connected to '$SSID' (BSSID=$BSSID)" else -echo "No active AP on device '$INTERFACE'" +echo "No active AP on device '$INTERFACE'" >&2 fi fi done diff --git a/examples/shell/disconnect-device.sh b/examples/shell/disconnect-device.sh index 045d64d..e8af42f 100755 --- a/examples/shell/disconnect-device.sh +++ b/examples/shell/disconnect-device.sh @@ -61,7 +61,7 @@ disconnect_device () fi done - echo "Device with interface '$1' not found." + echo "Device with interface '$1' not found." >&2 return 1 } @@ -70,7 +70,7 @@ disconnect_device () if [ ! -n "$1" ]; then echo "Usage: `basename $0` " exit 2 -fi +fi # disconnect device disconnect_device $1 -- 2.1.4 ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list
[PATCH 1/1] examples: python: print into stderr
Signed-off-by: Petr Vorel --- examples/python/dbus/vpn.py | 2 +- examples/python/gi/add_connection.py| 2 +- examples/python/gi/deactivate-all.py| 2 +- examples/python/gi/firewall-zone.py | 2 +- examples/python/gi/update-ip4-method.py | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/python/dbus/vpn.py b/examples/python/dbus/vpn.py index 59773a6..5f4af0a 100755 --- a/examples/python/dbus/vpn.py +++ b/examples/python/dbus/vpn.py @@ -106,7 +106,7 @@ def activate_connection(connection_path, device_path): sys.exit(0) def error_handler(*args): - print "Error activating device: %s" % args + sys.stderr.write("Error activating device: %s\n" % args) sys.exit(1) bus = dbus.SystemBus() diff --git a/examples/python/gi/add_connection.py b/examples/python/gi/add_connection.py index bb1163d..6665099 100755 --- a/examples/python/gi/add_connection.py +++ b/examples/python/gi/add_connection.py @@ -69,7 +69,7 @@ def added_cb(client, result, data): client.add_connection_finish(result) print("The connection profile has been succesfully added to NetworkManager.") except Exception, e: -print("Error: %s" % e) +sys.stderr.write("Error: %s\n" % e) main_loop.quit() if __name__ == "__main__": diff --git a/examples/python/gi/deactivate-all.py b/examples/python/gi/deactivate-all.py index 68f1d2d..571f3fe 100755 --- a/examples/python/gi/deactivate-all.py +++ b/examples/python/gi/deactivate-all.py @@ -77,5 +77,5 @@ if __name__ == "__main__": client.deactivate_connection(ac, None) sys.stdout.write("\033[32m -> succeeded\033[0m\n") except Exception, e: - sys.stdout.write("\033[31m -> failed\033[0m (%s)\n" % e.message) + sys.stderr.write("\033[31m -> failed\033[0m (%s)\n" % e.message) diff --git a/examples/python/gi/firewall-zone.py b/examples/python/gi/firewall-zone.py index ed9e591..10add3e 100755 --- a/examples/python/gi/firewall-zone.py +++ b/examples/python/gi/firewall-zone.py @@ -75,5 +75,5 @@ if __name__ == "__main__": print("'%s' zone set to '%s'") % (c.get_id(), new_zone) break if not found: -print ("Error: connection '%s' not found.") % (con_name) +sys.stderr.write("Error: connection '%s' not found.\n") % (con_name) main_loop.quit() diff --git a/examples/python/gi/update-ip4-method.py b/examples/python/gi/update-ip4-method.py index 983578c..2aa4af3 100755 --- a/examples/python/gi/update-ip4-method.py +++ b/examples/python/gi/update-ip4-method.py @@ -80,6 +80,6 @@ if __name__ == "__main__": c.commit_changes(True, None) print("The connection profile has been updated.") except Exception, e: -print("Error: %s" % e) +sys.stderr.write("Error: %s\n" % e) break -- 2.1.4 ___ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list