1. 14 Sep, 2018 1 commit
  2. 13 Sep, 2018 7 commits
  3. 08 Sep, 2018 1 commit
  4. 04 Sep, 2018 2 commits
    • Thomas Haller's avatar
      libnm/crypto: rework endianness detection for crypto_verify_pkcs12() · 08c80dd2
      Thomas Haller authored
      At other places, we already use __BYTE_ORDER define to detect endianness.
      We don't need multiple mechanisms.
      
      Also note that meson did not do the correct thing as AC_C_BIGENDIAN,
      so meson + nss + big-endian was possibly broken.
      08c80dd2
    • Thomas Haller's avatar
      build: enable building both crypto backends for tests · e01f7f2c
      Thomas Haller authored
      If the library is available, let's at least compile both
      crypto backends.
      
      That is helpful when developing on crypto backends, so that
      one does not have to configure the build twice.
      
      With autotools, the build is only run during `make check`.
      Not for meson, but that is generally the case with our meson
      setup, that it also builds tests during the regular build step.
      e01f7f2c
  5. 27 Aug, 2018 2 commits
    • Thomas Haller's avatar
      build: cleanup build defines for session-tracking · 1a9bc224
      Thomas Haller authored
      - always define the SESSION_TRACKING_* defines to replace
        "#ifdef" with "#if".
      
      - drop defining the consolekit database path CKDB_PATH in
        config.h. The path was not customizable via configure/meson.
      
      - fix meson build to enable consolekit support for session tracking
        without also enabling logind/elogind session tracking.
        logind/elogind is mutually exclusive, but consolekit session tracking
        goes together just fine.
      1a9bc224
    • Thomas Haller's avatar
      build: always define NM_MORE_LOGGING define and don't check with #ifdef · 3b5f8c91
      Thomas Haller authored
      Using '#ifdef' is generally error prone. It's better to always define
      a define and check for it explicitly. This way, the compiler can issue
      a warning if the define does not exist.
      
      Also, note how meson would always define NM_MORE_LOGGING, possibly to
      "0". That means, for meson, we unintentionally always enabled more
      logging because the define was always present.
      
      Fix that.
      3b5f8c91
  6. 13 Aug, 2018 1 commit
  7. 26 Jul, 2018 1 commit
    • Thomas Haller's avatar
      build: avoid AC_CHECK_FILE() due to problems with cross-compilation · 81e5b262
      Thomas Haller authored
      AC_CHECK_FILE() does not work for cross compilation. Autoconf
      documentation says:
      
        Be aware that, like most Autoconf macros, they test a feature of the
        host machine, and therefore, they die when cross-compiling. [1]
      
      Test for the existance of the file directly. Of course, when cross
      compiling, it's not at all clear that the host machine will run the same
      distribution. And thus detecting --enable-ifcfg-rh based on the build
      machine is likely wrong. Note, that we already did
      
          AS_IF([test -z "$hostname_persist" -a -f /etc/SuSE-release], hostname_persist=suse)
      
      which has the same problem.
      
      At least, build no longer fails, and the user can inspect the ./configure
      summary and see which features were misdetected.
      
      [1] https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Files.html
      81e5b262
  8. 25 Jul, 2018 1 commit
  9. 29 Jun, 2018 1 commit
  10. 27 Jun, 2018 2 commits
    • Thomas Haller's avatar
      logging: warn about invalid logging backends and drop "debug" backend · dbd48f26
      Thomas Haller authored
      "debug" was documentation in `man NetworkManager.conf` as a valid
      logging backend. However, it was completely ignored by
      nm_logging_syslog_openlog().
      In fact, it makes not sense. Passing debug = TRUE to
      nm_logging_syslog_openlog(), means that all messages will be
      printed to stderr in addition to syslog/journal. However, when
      NetworkManager is daemonizing, stderr is closed.
      Whether NetworkManager is daemonizing depends entirely on command
      line options --no-daemon and --debug. Hence, the logging backend "debug"
      from the configuration file either conflicts or is redundant.
      
      Also, adjust logging backend description in `man NetworkManager.conf`.
      
      Also, log a warning about invalid/unsupported logging backend.
      
      (cherry picked from commit 2ccf6168)
      dbd48f26
    • Thomas Haller's avatar
      logging: warn about invalid logging backends and drop "debug" backend · 2ccf6168
      Thomas Haller authored
      "debug" was documentation in `man NetworkManager.conf` as a valid
      logging backend. However, it was completely ignored by
      nm_logging_syslog_openlog().
      In fact, it makes not sense. Passing debug = TRUE to
      nm_logging_syslog_openlog(), means that all messages will be
      printed to stderr in addition to syslog/journal. However, when
      NetworkManager is daemonizing, stderr is closed.
      Whether NetworkManager is daemonizing depends entirely on command
      line options --no-daemon and --debug. Hence, the logging backend "debug"
      from the configuration file either conflicts or is redundant.
      
      Also, adjust logging backend description in `man NetworkManager.conf`.
      
      Also, log a warning about invalid/unsupported logging backend.
      2ccf6168
  11. 15 Jun, 2018 3 commits
  12. 31 May, 2018 1 commit
  13. 24 May, 2018 1 commit
  14. 14 May, 2018 1 commit
    • Lubomir Rintel's avatar
      build: qualify plugin dir name with a version string · 320422e4
      Lubomir Rintel authored
      This makes package updates more robust, avoiding in-place replaces of
      the plugins.
      
      Previously, if an upgrade transaction was terminated, NetworkManager
      library could end up being of a different version than the plugins.
      If the user was unfortunate enough to connect using a connection that
      required a plugin (say, Wi-Fi), he would be left without a network
      connection making it somewhat inconvenient to recover from the botched
      upgrade.
      
      This makes the whole situation a little bit less sad.
      
      The VPN plugins are kept where they always have been -- the path is not
      qualified with a version number.
      320422e4
  15. 11 May, 2018 2 commits
  16. 09 May, 2018 1 commit
    • Lubomir Rintel's avatar
      build: qualify plugin dir name with a version string · 6384ad4e
      Lubomir Rintel authored
      This makes package updates more robust, avoiding in-place replaces of
      the plugins.
      
      Previously, if an upgrade transaction was terminated, NetworkManager
      library could end up being of a different version than the plugins.
      If the user was unfortunate enough to connect using a connection that
      required a plugin (say, Wi-Fi), he would be left without a network
      connection making it somewhat inconvenient to recover from the botched
      upgrade.
      
      This makes the whole situation a little bit less sad.
      6384ad4e
  17. 23 Apr, 2018 1 commit
  18. 13 Apr, 2018 1 commit
    • Thomas Haller's avatar
      auth-manager: always compile D-Bus calls to polkit · 41abf9f8
      Thomas Haller authored
      Supporting PolicyKit required no additional library, just extra code
      to handle the D-Bus calls. For that, there was a compile time option
      to even stip out that code. Note, that you could (and still can)
      configure the system not to use policy-kit. The point was to reduce
      the binary size in case you don't need it.
      
      Remove this. I guess, we we aim for such aggressive optimization of
      the binary size, we should instead make all device types disablable
      at configuration time. We don't do that either and other low hanging
      fruits, because it's better to always enable features, unless they
      require external dependencies.
      
      Also, the next commit will make more use of NMAuthManager. So, having
      it disabled at compile time, makes even less sense.
      41abf9f8
  19. 19 Mar, 2018 2 commits
  20. 15 Mar, 2018 1 commit
  21. 21 Feb, 2018 1 commit
    • Thomas Haller's avatar
      netlink: drop libnl3 dependency · 3fab322a
      Thomas Haller authored
      From libnl3, we only used the helper function to parse/generate netlink
      messages and the socket functions to send/receive messages. We don't
      need an external dependency to do that, it is simple enough.
      
      Drop the libnl3 dependency, and replace all missing code by directly
      copying it from libnl3 sources. At this point, I mostly tried to
      import the required bits to make it working with few modifications.
      
      Note that this increases the binary size of NetworkManager by 4736 bytes
      for contrib/rpm build on x86_64. In the future, we can simplify the code
      further.
      
      A few modifications from libnl3 are:
      
      - netlink errors NLE_* are now in the domain or regular errno.
        The distinction of having to bother with two kinds of error
        number domains was annoying.
      
      - parts of the callback handling is copied partially and unused parts
        are dropped. Especially, the verbose/debug handlers are not used.
        In following commits, the callback handling will be significantly
        simplified.
      
      - the complex handling of seleting ports was simplified. We now always
        let kernel choose the right port automatically.
      3fab322a
  22. 16 Feb, 2018 3 commits
  23. 15 Feb, 2018 2 commits
  24. 05 Feb, 2018 1 commit