]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
Merge remote-tracking branch 'upstream/master' 144/head
authorChristopher Zimmermann <madroach@gmerlin.de>
Wed, 3 Feb 2021 12:19:19 +0000 (13:19 +0100)
committerChristopher Zimmermann <madroach@gmerlin.de>
Wed, 3 Feb 2021 12:19:19 +0000 (13:19 +0100)
22 files changed:
1  2 
cachedb/cachedb.c
config.h.in
configure
configure.ac
daemon/daemon.c
daemon/unbound.c
dns64/dns64.c
edns-subnet/subnetmod.c
edns-subnet/subnetmod.h
ipset/ipset.c
ipset/ipset.h
iterator/iterator.c
iterator/iterator.h
libunbound/context.c
libunbound/libunbound.c
respip/respip.c
services/modstack.c
smallapp/unbound-checkconf.c
util/fptr_wlist.c
util/module.h
validator/validator.c
validator/validator.h

Simple merge
diff --cc config.h.in
index 0b1f8053ade0c36c0a0544931de9a9f487c2ba60,103ad9f0068cf834de44f02f7dbd39c37785360e..77a8a87d7996187b854bd323fb653225444df65c
  /* Define to 1 if you have the <nettle/eddsa.h> header file. */
  #undef HAVE_NETTLE_EDDSA_H
  
 +/* Define to 1 if you have the <net/pfvar.h> header file. */
 +#undef HAVE_NET_PFVAR_H
 +
+ /* Define to 1 if you have the <net/if.h> header file. */
+ #undef HAVE_NET_IF_H
+ /* Define this to use nghttp2 client. */
+ #undef HAVE_NGHTTP2
+ /* Define to 1 if you have the <nghttp2/nghttp2.h> header file. */
+ #undef HAVE_NGHTTP2_NGHTTP2_H
  /* Use libnss for crypto */
  #undef HAVE_NSS
  
diff --cc configure
Simple merge
diff --cc configure.ac
index 09bdf7c57286df037935f4ded94767a5bb9b00c4,2d88048f754d0eeaf84f7fd1e669c54410574cb3..3fd070188b885b67c78fa0e789fbc8b9afa7133e
@@@ -1756,38 -1809,30 +1809,36 @@@ case "$enable_ipset" i
                IPSET_OBJ="ipset.lo"
                AC_SUBST(IPSET_OBJ)
  
 -              # mnl
 -              AC_ARG_WITH(libmnl, AS_HELP_STRING([--with-libmnl=path],[specify explicit path for libmnl.]),
 -                      [ ],[ withval="yes" ])
 -              found_libmnl="no"
 -              AC_MSG_CHECKING(for libmnl)
 -              if test x_$withval = x_ -o x_$withval = x_yes; then
 -                      withval="/usr/local /opt/local /usr/lib /usr/pkg /usr/sfw /usr"
 -              fi
 -              for dir in $withval ; do
 -                      if test -f "$dir/include/libmnl/libmnl.h"; then
 -                              found_libmnl="yes"
 -                              dnl assume /usr is in default path.
 -                              if test "$dir" != "/usr"; then
 -                                      CPPFLAGS="$CPPFLAGS -I$dir/include"
 -                                      LDFLAGS="$LDFLAGS -L$dir/lib"
 -                              fi
 -                              AC_MSG_RESULT(found in $dir)
 -                              LIBS="$LIBS -lmnl"
 -                              break;
 -                      fi
 -              done
 -              if test x_$found_libmnl != x_yes; then
 -                      AC_MSG_ERROR([Could not find libmnl, libmnl.h])
 -              fi
 +              # BSD's pf
 +              AC_CHECK_HEADERS([net/pfvar.h], [], [
 +                # mnl
-                 AC_ARG_WITH(libmnl, AC_HELP_STRING([--with-libmnl=path],
-                         [specify explicit path for libmnl.]),
++                AC_ARG_WITH(libmnl, AS_HELP_STRING([--with-libmnl=path],[specify explicit path for libmnl.]),
 +                        [ ],[ withval="yes" ])
 +                found_libmnl="no"
 +                AC_MSG_CHECKING(for libmnl)
 +                if test x_$withval = x_ -o x_$withval = x_yes; then
 +                        withval="/usr/local /opt/local /usr/lib /usr/pkg /usr/sfw /usr"
 +                fi
 +                for dir in $withval ; do
 +                        if test -f "$dir/include/libmnl/libmnl.h"; then
 +                                found_libmnl="yes"
 +                                dnl assume /usr is in default path.
 +                                if test "$dir" != "/usr"; then
 +                                        CPPFLAGS="$CPPFLAGS -I$dir/include"
 +                                        LDFLAGS="$LDFLAGS -L$dir/lib"
 +                                fi
 +                                AC_MSG_RESULT(found in $dir)
 +                                LIBS="$LIBS -lmnl"
 +                                break;
 +                        fi
 +                done
-                 if test x_$found_libmnl != x_yes
-                 then
-                         AC_ERROR([Could not find libmnl, libmnl.h])
++                if test x_$found_libmnl != x_yes; then
++                        AC_MSG_ERROR([Could not find libmnl, libmnl.h])
 +                fi
 +              ], [
 +                #include <netinet/in.h>
 +                #include <net/if.h>
 +              ])
                ;;
      no|*)
        # nothing
diff --cc daemon/daemon.c
Simple merge
Simple merge
diff --cc dns64/dns64.c
Simple merge
Simple merge
Simple merge
diff --cc ipset/ipset.c
index 347512406fed84d9394cc710559bc9a35ca643ee,f6e2c4a9d8a6d947f056acd88f023624a22296bf..347512406fed84d9394cc710559bc9a35ca643ee
mode 100755,100644..100644
diff --cc ipset/ipset.h
index 66a4378b628708857736858e1c25d97514225b3f,f60a8be8c8377da240452b2464298a83772dff44..66a4378b628708857736858e1c25d97514225b3f
mode 100755,100644..100644
index af209f84d9f928a9a2a9ea0ca505664dee7325b5,99d02011784256b11f057fbeb7e972210f9a6eb7..6363678881628209f0af10ee8eb70e73e2837172
  /* in msec */
  int UNKNOWN_SERVER_NICENESS = 376;
  
+ static void target_count_increase_nx(struct iter_qstate* iq, int num);
  int 
 -iter_init(struct module_env* env, int id)
 +iter_setup(struct module_env* env, int id)
  {
        struct iter_env* iter_env = (struct iter_env*)calloc(1,
                sizeof(struct iter_env));
Simple merge
Simple merge
index e1abfe64ab02888872813e7365d3baedcea1ab8a,c9e24ba8d8f23567a263bf2d4b6057af71f8c29f..acab120c5c846ed903732caf2092c497cd96d31a
@@@ -172,8 -185,8 +185,9 @@@ ub_ctx_create(void
                ub_randfree(ctx->seed_rnd);
                config_delete(ctx->env->cfg);
                modstack_desetup(&ctx->mods, ctx->env);
 +              modstack_deinit(&ctx->mods, ctx->env);
                edns_known_options_delete(ctx->env);
+               edns_strings_delete(ctx->env->edns_strings);
                free(ctx->env);
                free(ctx);
                errno = e;
                ub_randfree(ctx->seed_rnd);
                config_delete(ctx->env->cfg);
                modstack_desetup(&ctx->mods, ctx->env);
 +              modstack_deinit(&ctx->mods, ctx->env);
                edns_known_options_delete(ctx->env);
+               edns_strings_delete(ctx->env->edns_strings);
                free(ctx->env);
                free(ctx);
                errno = e;
diff --cc respip/respip.c
Simple merge
Simple merge
Simple merge
index 35d8bfaedf65f2f75b6bd832025d8419c158af54,a9e9d3a0323989125aebb6814ec46053f47efd2c..28629430edb3f97b440bed74c97a1f8240e616e1
@@@ -382,72 -390,58 +390,78 @@@ fptr_whitelist_modenv_detect_cycle(int 
        return 0;
  }
  
 -int 
 +int
  fptr_whitelist_mod_init(int (*fptr)(struct module_env* env, int id))
  {
 -      if(fptr == &iter_init) return 1;
 -      else if(fptr == &val_init) return 1;
 -      else if(fptr == &dns64_init) return 1;
 -      else if(fptr == &respip_init) return 1;
 +      if(fptr == &module_dummy_init) return 1;
 +#ifdef USE_IPSET
 +      else if(fptr == &ipset_init) return 1;
 +#endif
 +      return 0;
 +}
 +
 +int
 +fptr_whitelist_mod_deinit(int (*fptr)(struct module_env* env, int id))
 +{
 +      if(fptr == &module_dummy_init) return 1;
 +#ifdef USE_IPSET
 +      else if(fptr == &ipset_deinit) return 1;
 +#endif
 +      return 0;
 +}
 +
 +int
 +fptr_whitelist_mod_setup(int (*fptr)(struct module_env* env, int id))
 +{
 +      if(fptr == &iter_setup) return 1;
 +      else if(fptr == &val_setup) return 1;
 +      else if(fptr == &dns64_setup) return 1;
 +      else if(fptr == &respip_setup) return 1;
  #ifdef WITH_PYTHONMODULE
 -      else if(fptr == &pythonmod_init) return 1;
 +      else if(fptr == &pythonmod_setup) return 1;
  #endif
+ #ifdef WITH_DYNLIBMODULE
+       else if(fptr == &dynlibmod_init) return 1;
+ #endif
  #ifdef USE_CACHEDB
 -      else if(fptr == &cachedb_init) return 1;
 +      else if(fptr == &cachedb_setup) return 1;
  #endif
  #ifdef USE_IPSECMOD
 -      else if(fptr == &ipsecmod_init) return 1;
 +      else if(fptr == &ipsecmod_setup) return 1;
  #endif
  #ifdef CLIENT_SUBNET
 -      else if(fptr == &subnetmod_init) return 1;
 +      else if(fptr == &subnetmod_setup) return 1;
  #endif
  #ifdef USE_IPSET
 -      else if(fptr == &ipset_init) return 1;
 +      else if(fptr == &ipset_setup) return 1;
  #endif
        return 0;
  }
  
  int 
 -fptr_whitelist_mod_deinit(void (*fptr)(struct module_env* env, int id))
 +fptr_whitelist_mod_desetup(void (*fptr)(struct module_env* env, int id))
  {
 -      if(fptr == &iter_deinit) return 1;
 -      else if(fptr == &val_deinit) return 1;
 -      else if(fptr == &dns64_deinit) return 1;
 -      else if(fptr == &respip_deinit) return 1;
 +      if(fptr == &iter_desetup) return 1;
 +      else if(fptr == &val_desetup) return 1;
 +      else if(fptr == &dns64_desetup) return 1;
 +      else if(fptr == &respip_desetup) return 1;
  #ifdef WITH_PYTHONMODULE
 -      else if(fptr == &pythonmod_deinit) return 1;
 +      else if(fptr == &pythonmod_desetup) return 1;
  #endif
+ #ifdef WITH_DYNLIBMODULE
+       else if(fptr == &dynlibmod_deinit) return 1;
+ #endif
  #ifdef USE_CACHEDB
 -      else if(fptr == &cachedb_deinit) return 1;
 +      else if(fptr == &cachedb_desetup) return 1;
  #endif
  #ifdef USE_IPSECMOD
 -      else if(fptr == &ipsecmod_deinit) return 1;
 +      else if(fptr == &ipsecmod_desetup) return 1;
  #endif
  #ifdef CLIENT_SUBNET
 -      else if(fptr == &subnetmod_deinit) return 1;
 +      else if(fptr == &subnetmod_desetup) return 1;
  #endif
  #ifdef USE_IPSET
 -      else if(fptr == &ipset_deinit) return 1;
 +      else if(fptr == &ipset_desetup) return 1;
  #endif
        return 0;
  }
diff --cc util/module.h
Simple merge
Simple merge
Simple merge