summaryrefslogtreecommitdiff
path: root/contrib
Commit message (Collapse)AuthorAgeFilesLines
...
* contrib/checkpatch: avoid command injection in checkpatch.pl scriptThomas Haller2019-03-181-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | The capture variables, $1, etc, are not valid unless the match succeeded, and they're not cleared, either. $ git checkout -B C origin/master && \ echo XXXXX > f.txt && \ git add f.txt && \ git commit -m 'this commit does something()' Branch 'C' set up to track remote branch 'master' from 'origin'. Reset branch 'C' Your branch is up to date with 'origin/master'. sh: -c: line 0: syntax error near unexpected token `(' sh: -c: line 0: `git log --abbrev=12 --pretty=format:"%h ('%s')" -1 does something() 2>/dev/null' >>> VALIDATE "a169a98e14 this commit does something()" (commit message):4: Commit 'does something()' does not seem to exist: > Subject: [PATCH] this commit does something() (commit message):4: Refer to the commit id properly: : > Subject: [PATCH] this commit does something() The patch does not validate.
* platform: add routing-rule add/delete netlink functionsThomas Haller2019-03-131-1/+1
|
* contrib: set shift for less in NM-logThomas Haller2019-03-131-1/+1
|
* contrib/rpm: drop ldconfig scriptlets from Fedora 28+Lubomir Rintel2019-03-071-0/+2
| | | | | | In newer RPM file triggers in glibc package take care of this. While these scriptlets whould do no harm there, removing them yields a tiny theoretical performance improvement.
* Revert "contrib/rpm: use "%ldconfig_scriptlets" for Fedora 30+"Lubomir Rintel2019-03-071-5/+1
| | | | | | | This is utterly pointless. %ldconfig_scriptlets expand to an empty string on Fedora 28+. This reverts commit ad836541cb1cc67a484fad61e13b17c3c5643419.
* contrib/rpm: drag in vala tools by the binaryLubomir Rintel2019-03-071-1/+1
| | | | The package's called either "vala" or "vala-tools". Sigh.
* Revert "contrib/rpm: require "vala" instead of "vala-tools" for Fedora 30+"Lubomir Rintel2019-03-071-4/+0
| | | | | | This is just plain ugly. This reverts commit 0024485b5a2527fa0af699cf110d807c493b90f8.
* Revert "contrib/rpm: remove Group tag for Fedora 30+"Lubomir Rintel2019-03-071-40/+0
| | | | | | | | | Group tag is not required, though is harmless. We could either remove it, or keep it, but there's absolutely no excuse for conditionalizing it. Let's keep it for now, because rpm -i still prints it. This reverts commit 1feeba6f1add8db5bf4a7cd41be76a47f44f844b.
* contrib/checkpatch: check that we refer to commits properlyLubomir Rintel2019-03-071-3/+33
|
* contrib/rpm: remove Group tag for Fedora 30+Thomas Haller2019-03-071-0/+40
| | | | | | https://fedoraproject.org/wiki/Changes/Remove_Group_Tag https://src.fedoraproject.org/rpms/NetworkManager/c/62adcbc888c62d8ab32531327e064fcc6581ca30
* contrib/rpm: use "%ldconfig_scriptlets" for Fedora 30+Thomas Haller2019-03-071-1/+5
| | | | | | https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets https://src.fedoraproject.org/rpms/NetworkManager/c/5c6421bc88bcfe4e6c9344d816d0156afb6055fc
* contrib/rpm: require "vala" instead of "vala-tools" for Fedora 30+Thomas Haller2019-03-071-0/+4
| | | | | | | | | | The "vala-tools" package was merged into "vala" [1]. While "vala" now "Provides: vala-tools", update the build requirements for Fedora 30 and newer. [1] https://src.fedoraproject.org/rpms/vala/c/82b21cc3026b8793744c51c34b7e2be7caec4aba https://src.fedoraproject.org/rpms/NetworkManager/c/f6c878a04ad4bbde6474e2f90b6c12c11b685967
* build/ci: enable --werror for meson buildsThomas Haller2019-02-081-3/+16
| | | | | | | | | This enables -Werror for meson builds on gitlab-ci and semaphore. Not on Travis, the compiler there is too old, giving too many bogus warnings. This reverts commit 928d68d04af20808f801f05f92ad83179d7b826e ("m4: disable -Wmissing-braces for newer clang").
* contrib/rpm: enable warnings and fatal-warnings with meson buildThomas Haller2019-02-081-0/+4
|
* contrib/rpm: add comment to "20-connectivity-{fedora,redhat}.conf" about ↵Thomas Haller2019-02-082-0/+10
| | | | rp_filter
* gitlab-ci: build with clang and do multiple builds in one test-stepThomas Haller2019-02-071-0/+4
| | | | | | | | | | | | | Also, let one docker image do multiple builds. We fetch a fedora docker image, and then install 250 MB of packages. That alone takes a lot of time and resources. Instead of running a large number of docker images that only do one build, let one image do several builds. Also, install ccache. Hopefully this way we can benefit from building the same sources multiple times. Also note that building docs does not work currently with clang, due to g-ir-scanner. See commit 05568860cce5332977d92b85f7c25b8ed646cd58.
* gitlab-ci: allow enabling/disabling building documentation in "nm-ci-run.sh"Thomas Haller2019-02-071-0/+23
| | | | | | | | | | | | | | | | | | | | | | | g-ir-scanner does not support building with clang, due to [1], [2], [3]. It triggers checking if /usr/bin/g-ir-scanner works... no (compiler failure -- check config.log) configure: error: introspection enabled but can't be used with clang-7: error: unknown argument: '-fstack-clash-protection' See also commit 99b92fd9920372e57bfe3a624b29915ca3335d99, which adds this configure check. Honor the environment variable WITH_DOCS to allow the caller to overwrite the automatic detection that the script does. [1] https://bugzilla.gnome.org/show_bug.cgi?id=757934 [2] https://gitlab.gnome.org/GNOME/gobject-introspection/issues/150 [3] https://gitlab.gnome.org/GNOME/gobject-introspection/commit/c14d0372283abc1b857e38517e791447233e4d62
* contrib: install python3-gobject as REQUIRED_PACKAGESThomas Haller2019-02-071-0/+1
| | | | | | | | To run the tests with python3, we need python3-gobject. Note that "contrib/fedora/REQUIRED_PACKAGES" is called by "contrib/scripts/nm-ci-run.sh" script to install the packages in Fedora.
* contrib/rpm: quote snapshot/git_sha variables in spec-fileThomas Haller2019-02-071-2/+2
| | | | | | | | | | | | | | | | | Otherwise the following fails: $ ./contrib/fedora/rpm/build_clean.sh -g -s x.1 ... error: parse error in expression error: /data/src/_NetworkManager/contrib/fedora/rpm/NetworkManager.20190207-165257.XOkW4i/SPECS/NetworkManager.spec:35: bad %if condition ERROR: rpmbuild FAILED Even with the fix, not all characters are allowed: $ ./contrib/fedora/rpm/build_clean.sh -g -s x-1 ... error: line 112: Illegal char '-' (0x2d) in: Release: 22165.x-1.25b13e2053.fc29 ERROR: rpmbuild FAILED
* gitlab-ci: minor cleanup of "contrib/scripts/nm-ci-run.sh" scriptThomas Haller2019-02-051-3/+11
|
* contrib/rpm: add option to enable LTO for RPM buildThomas Haller2019-02-041-0/+11
|
* all: fix misspellingsRafael Fontenelle2019-01-241-1/+1
| | | | https://gitlab.freedesktop.org/NetworkManager/NetworkManager/merge_requests/64
* contrib/rpm: remove unused 00-server-dhcp-client-id.conf configuration snippetth/dhcp-client-id-infiniband-rh1658057Thomas Haller2019-01-073-13/+0
| | | | | | | | | | | Now that the default for the internal client is "mac", we don't need this snippet anymore. Drop it. Don't renumber the source files but leave the gap at Source3. Everytime we add config snippets the numbers need to be shuffled, so don't fill the gap and maybe use it in the future. https://bugzilla.redhat.com/show_bug.cgi?id=1661165
* contrib: adjust NM-log for changes to platform loggingThomas Haller2018-12-301-1/+1
| | | | Fixes: 8f107f5c00258c7a4fb780a25f299af6f116f575
* checkpatch: warn if there is a file "TODO.txt"Thomas Haller2018-12-301-3/+17
| | | | | | | | This allows us to add a file "TODO.txt" in the top level directory. This file is not intended to be merged to master, but keep track of stuff that is still to do before merging a branch. Let checkpatch.pl warn about the presence of such a file.
* checkpatch: warn about suspicious gtk-doc annotationsThomas Haller2018-12-301-0/+1
| | | | | | | | | | | | It's (allow-none): and (transfer none): That's confusing enough. Add a check.
* build: meson: Remove polkit_dir optionIñigo Martínez2018-12-201-1/+1
| | | | | | | | | | | | meson is able to get variables defined in pkg-config files such as directory paths. PolicyKit defines in its pkg-config file the path to the directory where `policy` files are present. This removes the `polkit_dir` option to ease the move to start using those variables. The `polkit` variable has also been converted to boolean. Fedora spec script has also been updated accordingly.
* contrib/rpm: adjust match-device spec for 00-server-dhcp-client-id.confThomas Haller2018-12-111-1/+1
| | | | | | | | | | For older NetworkManager versions, a match spec that only contained except: specifiers could never yield a positive match. That is not very useful and got fixed by commit 242de347adbf653a709607979d36a0da1ca3ff0b (core: fix device spec matching for a list of "except:"). Still, adjust the configuration snippet so that it also works with configurations that predate the fix.
* gitlab-ci: patch gtk-doc to generate valid documentationThomas Haller2018-12-011-0/+40
| | | | | | | | | We generate documentation for pages ([1], [2]), hence, we need to patch gtk-doc [3]. [1] https://networkmanager.pages.freedesktop.org/NetworkManager/NetworkManager/ [2] https://networkmanager.pages.freedesktop.org/NetworkManager/libnm/ [3] https://gitlab.gnome.org/GNOME/gtk-doc/merge_requests/2
* ci: use common script for tests on travis and gitlabThomas Haller2018-11-122-27/+150
| | | | | | | | | | | | | | For one, it's not unreasonable that we want to run the same tests both for gitlab and travis. Move the actual tests into a script, which is called by both CI environments. We still can do something different, based on the environment. The advantage here is, that the common part will be shared, and the places where we differ can easily be spot. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/merge_requests/44
* rpm: disable ebpf support on RHELBeniamino Galvani2018-11-091-0/+4
| | | | | | | The ebpf syscall doesn't work on RHEL even if the linux/bpf.h header is available: let's explicitly disable it. On Fedora explicitly enable eBPF instead of autodetecting it.
* modemu: fall back to a virtual busLubomir Rintel2018-11-071-1/+9
| | | | | | | | This allows us to somehow work with no PCI (or USB for that matter), such as some virtual machines. Old ModemManager doesn't like this though, but there doesn't seem to be a way around it. https://github.com/NetworkManager/NetworkManager/pull/246
* modemu: fix subsystem hash endiannessLubomir Rintel2018-11-071-3/+4
| | | | | | | Tested on a really really big endian IBM POWER. Also turn an accompanying comment into a slightly more sensible one. https://github.com/NetworkManager/NetworkManager/pull/246
* rpm: add a bundled(systemd) provideLubomir Rintel2018-11-071-0/+12
| | | | | | | | Required by Fedora Packaging Standards [1] and also really useful. [1] https://fedoraproject.org/wiki/Bundled_Libraries?rd=Packaging:Bundled_Libraries#Requirement_if_you_bundle https://github.com/NetworkManager/NetworkManager/pull/247
* contrib/rpm: add "00-server-dhcp-client-id.conf"Thomas Haller2018-11-013-4/+17
| | | | | | | | | | While this is packaged in "NetworkManager-config-server.rpm" sub-package, it's not in "00-server.conf" file. The reason is that a convenient way to disable configuration from "/usr/lib/NetworkManager/conf.d", is by putting a (possibly empty) file into /etc directory with the same name. If the sub-package only provides one large "00-server.conf" file, this is no longer possible at a granular level.
* checkpatch: complain about XXX markers in codeThomas Haller2018-10-251-0/+1
| | | | | | We have a few source code tags like "TODO" and "FIXME". "XXX" is not intended to be merged, it is for marking places in code while still working on it.
* build: fix build_clean.sh script to enable ibftThomas Haller2018-10-241-1/+1
| | | | | | | | | | autotools build has/had a bug, where ibft test files would only be disted if the ibft plugin was enabled. Regardless of that, `build_clean.sh --release` is our suggested way to create a release tarball. It should always enable the ibft plugin. It didn't do so, due to a bug.
* contrib: adjust NM-log for changes to platform loggingThomas Haller2018-10-231-2/+2
| | | | Fixes: 8f107f5c00258c7a4fb780a25f299af6f116f575
* checkpatch: quote variable in "checkpatch-feature-branch.sh"Thomas Haller2018-10-221-3/+3
|
* contrib/rpm: don't depend NetworkManager-ovs package on openvswitch on RHELThomas Haller2018-10-221-0/+2
| | | | | | | | | | | | | On RHEL, openvswitch package is not in the base set of packages. Hence, we cannot depend NetworkManager-ovs package on openvswitch. This isn't really a problem, because NetworkManager's OVS plugin must anyway behave graceful when openvswich service is not running or not available. It only means, that a user who wants to use the OVS plugin needs to explicitly install the openvswitch package. https://bugzilla.redhat.com/show_bug.cgi?id=1629178 https://bugzilla.redhat.com/show_bug.cgi?id=1633190
* checkpatch: support ranges for "checkpatch-feature-branch.sh"Thomas Haller2018-10-221-10/+19
| | | | | Improve "checkpatch-feature-branch.sh" to support accepting range as argument.
* checkpatch: fix "checkpatch-feature-branch.sh" for master branchThomas Haller2018-10-221-1/+5
| | | | | | | | | | | | | The main purpose of "checkpatch-feature-branch.sh" is to test all patches of a feature branch. When we run the script against master (or nm-1-*), then there is no feature branch. Previously, the script would just error out. That is not very useful, in particular as we call this from gitlab-ci, which also runs on master. Instead, in that case, test the HEAD.
* checkpatch: add "contrib/scripts/checkpatch-feature-branch.sh" scriptThomas Haller2018-10-222-0/+39
| | | | | | | | | This takes current HEAD branch, and finds all the commits what are not on master or one of the nm-1-* branches, and runs checkpatch.pl on each. The use is to run checkpatch.pl on all patches of a feature branch.
* contrib: make "contrib/fedora/REQUIRED_PACKAGES" executable scriptThomas Haller2018-10-222-4/+21
| | | | It will be called by .gitlab-ci.yml to install the packages.
* checkpatch: complain about Emacs file variables in source codeThomas Haller2018-10-181-0/+1
|
* systemd: don't make NetworkManager D-Bus activatableMichael Biebl2018-10-121-1/+0
| | | | | | | | | | | | | | | | | If the NetworkManager daemon has been stopped manually we don't want it to be autostarted by a client request. [lkundrak@v3.sk: The auto-activation is probably more surprising than useful. Services that need NetworkManager API should depend on NetworkManager service directly. I have no idea what purpose does the D-Bus service file serve nowadays, but it looks rather hacky (really, activating /bin/false) and the comment in it suggests that the autoactivating behavior was not intended anyway. Debian has been shipping this for quite some time and no complains have been heard.] https://github.com/NetworkManager/NetworkManager/pull/230
* contrib/checkpatch: remove the first character off a diffLubomir Rintel2018-10-071-1/+1
| | | | Otherwise the leading whitespace checks won't work on patches.
* contrib/checkpatch: check some more whitespace troubleLubomir Rintel2018-10-071-1/+9
|
* contrib/checkpatch: correctly separate indentation across hunksLubomir Rintel2018-10-071-6/+6
|
* contrib/rpm: support building with mesonBeniamino Galvani2018-09-281-1/+112
| | | | | | | | | | | | | | | | | | | Add support for building with meson, enabled by '--with meson' so that we can regularly test the whole build+test+install procedure with meson. I compared the RPM contents of NM, NM-libnm, NM-libnm-devel packages and they match the autotools ones. It's also faster: $ time contrib/fedora/rpm/build_clean.sh -g -Q -f real 3m54.239s user 11m15.000s sys 1m28.456s $ time contrib/fedora/rpm/build_clean.sh -g -Q -f -w meson real 3m9.938s user 9m5.225s sys 1m4.392s