1. 11 Apr, 2019 5 commits
    • Thomas Haller's avatar
      contrib/rpm: disable eBPF for package builds on Fedora · 3443a800
      Thomas Haller authored
      We have random failures to build on gitlab-ci. Something is wrong,
      at least, eBPF is not working reliably. Disable it for now.
      
      (cherry picked from commit 0d16b037)
      3443a800
    • Thomas Haller's avatar
      contrib/rpm: make spec file more similar to rhel-7's · 9fc91c23
      Thomas Haller authored
      (cherry picked from commit b3997312)
      9fc91c23
    • Thomas Haller's avatar
      contrib/rpm: from Fedora 31 onwards use internal DHCP client by default · 7bbb6a20
      Thomas Haller authored
      In RHEL-8.0 we already switched the default DHCP plugin.
      It's past time that we do the same for Fedora.
      
      (cherry picked from commit b1f556ba)
      7bbb6a20
    • Thomas Haller's avatar
      contrib/rpm: disable NDEBUG for meson builds · 46dce6e6
      Thomas Haller authored
      For better or worse, our release builds commonly do not disable assertions.
      That means,
      
       - NDEBUG is not set, and assert() is in effect
       - G_DISABLE_ASSERT is not set, and g_assert() is in effect
       - G_DISABLE_CHECKS is not set, and g_return*() is in effect.
      
      On the other hand, NM_MORE_ASSERTS is not enabled by default and nm_assert()
      is stripped away. That is the actual purpose of nm_assert(): it is
      commonly disabled on release builds, while all other assertions are
      enabled.
      
      Note that it is fully supported to build NetworkManager with all kind of
      assertions disabled. However, such a configuration is not much tested
      and I would not recommend it for that reason.
      
      %meson expands to
      
        $ /usr/bin/meson --buildtype=plain --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/libexec --bindir=/usr/bin --sbindir=/usr/sbin --includedir=/usr/include --datadir=/usr/share --mandir=/usr/share/man --infodir=/usr/share/info --localedir=/usr/share/locale --sysconfdir=/etc --localstatedir=/var --sharedstatedir=/var/lib --wrap-mode=nodownload --auto-features=enabled -Db_ndebug=true . x86_64-redhat-linux-gnu $OTHER_ARGS
      
      thus passing -DNDEBUG to the meson build. Override that.
      
      (cherry picked from commit ef338667)
      46dce6e6
    • Thomas Haller's avatar
      gitlab-ci: run unit tests for n-acd with eBPF disabled · 114ce3cb
      Thomas Haller authored
      Enabling eBPF causes src/devices/tests/test-acd to fail:
      
          strace: bpf(BPF_MAP_CREATE, {map_type=BPF_MAP_TYPE_HASH, key_size=4, value_size=1, max_entries=8, map_flags=0, inner_map_fd=0, map_name="", map_ifindex=0, btf_fd=0, btf_key_type_id=0, btf_value_type_id=0}, 112) = -1 EPERM (Operation not permitted)
      
          NetworkManager-Message: 10:07:04.404: <warn>  [1554631624.4046] acd[0xa2b400,10]: couldn't init ACD for announcing addresses on interface 'nm-test-veth0': Operation not permitted
      
      Interestingly it does not always fail. Seems to depend on the kernel
      which is used in the containerized test environments of gitlab-ci.
      
      For now, just disable eBPF and use the fallback implementation.
      
      (cherry picked from commit a5869d1b)
      114ce3cb
  2. 19 Mar, 2019 1 commit
    • Thomas Haller's avatar
      contrib/checkpatch: avoid command injection in checkpatch.pl script · 5e66dcc6
      Thomas Haller authored
      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.
      
      (cherry picked from commit d66a1ace)
      5e66dcc6
  3. 07 Mar, 2019 9 commits
  4. 08 Feb, 2019 3 commits
  5. 07 Feb, 2019 4 commits
  6. 05 Feb, 2019 1 commit
  7. 04 Feb, 2019 1 commit
  8. 24 Jan, 2019 1 commit
  9. 07 Jan, 2019 1 commit
  10. 30 Dec, 2018 3 commits
  11. 20 Dec, 2018 1 commit
    • Inigo Martínez's avatar
      build: meson: Remove polkit_dir option · 4b32bbc8
      Inigo Martínez authored
      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.
      4b32bbc8
  12. 11 Dec, 2018 1 commit
    • Thomas Haller's avatar
      contrib/rpm: adjust match-device spec for 00-server-dhcp-client-id.conf · 3627601b
      Thomas Haller authored
      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.
      3627601b
  13. 01 Dec, 2018 1 commit
  14. 12 Nov, 2018 1 commit
    • Thomas Haller's avatar
      ci: use common script for tests on travis and gitlab · 763cb8d4
      Thomas Haller authored
      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.
      
      !44
      763cb8d4
  15. 09 Nov, 2018 1 commit
    • Beniamino Galvani's avatar
      rpm: disable ebpf support on RHEL · 570c41aa
      Beniamino Galvani authored
      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.
      570c41aa
  16. 07 Nov, 2018 3 commits
  17. 01 Nov, 2018 1 commit
    • Thomas Haller's avatar
      contrib/rpm: add "00-server-dhcp-client-id.conf" · 7a46ccff
      Thomas Haller authored
      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.
      7a46ccff
  18. 25 Oct, 2018 1 commit
  19. 24 Oct, 2018 1 commit
    • Thomas Haller's avatar
      build: fix build_clean.sh script to enable ibft · b660a41c
      Thomas Haller authored
      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.
      b660a41c