<html>
    <head>
      <base href="https://bugzilla.netfilter.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Build failure if --with-xtables"
   href="https://bugzilla.netfilter.org/show_bug.cgi?id=1110">1110</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Build failure if --with-xtables
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>nftables
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>x86_64
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>other
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P5
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>iptables over nftable
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>pablo@netfilter.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>robby@rlworkman.net
          </td>
        </tr></table>
      <p>
        <div>
        <pre>On Slackware -current (post 14.2) with iptables-1.6.0, libmnl-1.0.3,
libnftnl-1.0.7, and nftables-0.7, this fails to build:

make  all-recursive
make[1]: Entering directory '/root/tmp/nftables-0.7'
Making all in src
make[2]: Entering directory '/root/tmp/nftables-0.7/src'
make  all-am
make[3]: Entering directory '/root/tmp/nftables-0.7/src'
  CC       xt.o
xt.c: In function ‘xt_stmt_xlate’:
xt.c:31:24: warning: implicit declaration of function ‘xt_xlate_alloc’
[-Wimplicit-function-declaration]
  struct xt_xlate *xl = xt_xlate_alloc(10240);
                        ^
xt.c:31:24: warning: initialization makes pointer from integer without a cast
[-Wint-conversion]
xt.c:37:28: error: ‘struct xtables_match’ has no member named ‘xlate’
   } else if (stmt->xt.match->xlate) {
                            ^
xt.c:38:11: error: variable ‘params’ has initializer but incomplete type
    struct xt_xlate_mt_params params = {
           ^
xt.c:39:5: error: unknown field ‘ip’ specified in initializer
     .ip  = stmt->xt.entry,
     ^
xt.c:39:12: warning: excess elements in struct initializer
     .ip  = stmt->xt.entry,
            ^
xt.c:39:12: note: (near initialization for ‘params’)
xt.c:40:5: error: unknown field ‘match’ specified in initializer
     .match  = stmt->xt.match->m,
     ^
xt.c:40:15: warning: excess elements in struct initializer
     .match  = stmt->xt.match->m,
               ^
xt.c:40:15: note: (near initialization for ‘params’)
xt.c:41:5: error: unknown field ‘numeric’ specified in initializer
     .numeric        = 0,
     ^
xt.c:41:23: warning: excess elements in struct initializer
     .numeric        = 0,
                       ^
xt.c:41:23: note: (near initialization for ‘params’)
xt.c:38:30: error: storage size of ‘params’ isn’t known
    struct xt_xlate_mt_params params = {
                              ^
xt.c:44:18: error: ‘struct xtables_match’ has no member named ‘xlate’
    stmt->xt.match->xlate(xl, &params);
                  ^
xt.c:45:17: warning: implicit declaration of function ‘xt_xlate_get’
[-Wimplicit-function-declaration]
    printf("%s", xt_xlate_get(xl));
                 ^
xt.c:45:11: warning: format ‘%s’ expects argument of type ‘char *’, but
argument 2 has type ‘int’ [-Wformat=]
    printf("%s", xt_xlate_get(xl));
           ^
xt.c:38:30: warning: unused variable ‘params’ [-Wunused-variable]
    struct xt_xlate_mt_params params = {
                              ^
xt.c:56:29: error: ‘struct xtables_target’ has no member named ‘xlate’
   } else if (stmt->xt.target->xlate) {
                             ^
xt.c:57:11: error: variable ‘params’ has initializer but incomplete type
    struct xt_xlate_tg_params params = {
           ^
xt.c:58:5: error: unknown field ‘ip’ specified in initializer
     .ip  = stmt->xt.entry,
     ^
xt.c:58:12: warning: excess elements in struct initializer
     .ip  = stmt->xt.entry,
            ^
xt.c:58:12: note: (near initialization for ‘params’)
xt.c:59:5: error: unknown field ‘target’ specified in initializer
     .target  = stmt->xt.target->t,
     ^
xt.c:59:16: warning: excess elements in struct initializer
     .target  = stmt->xt.target->t,
                ^
xt.c:59:16: note: (near initialization for ‘params’)
xt.c:60:5: error: unknown field ‘numeric’ specified in initializer
     .numeric        = 0,
     ^
xt.c:60:23: warning: excess elements in struct initializer
     .numeric        = 0,
                       ^
xt.c:60:23: note: (near initialization for ‘params’)
xt.c:57:30: error: storage size of ‘params’ isn’t known
    struct xt_xlate_tg_params params = {
                              ^
xt.c:63:19: error: ‘struct xtables_target’ has no member named ‘xlate’
    stmt->xt.target->xlate(xl, &params);
                   ^
xt.c:64:11: warning: format ‘%s’ expects argument of type ‘char *’, but
argument 2 has type ‘int’ [-Wformat=]
    printf("%s", xt_xlate_get(xl));
           ^
xt.c:57:30: warning: unused variable ‘params’ [-Wunused-variable]
    struct xt_xlate_tg_params params = {
                              ^
xt.c:74:2: warning: implicit declaration of function ‘xt_xlate_free’
[-Wimplicit-function-declaration]
  xt_xlate_free(xl);
  ^
make[3]: *** [Makefile:455: xt.o] Error 1
make[3]: Leaving directory '/root/tmp/nftables-0.7/src'
make[2]: *** [Makefile:332: all] Error 2
make[2]: Leaving directory '/root/tmp/nftables-0.7/src'
make[1]: *** [Makefile:386: all-recursive] Error 1
make[1]: Leaving directory '/root/tmp/nftables-0.7'
make: *** [Makefile:326: all] Error 2

For the sake of clarity, it builds fine if I --with-xtables is not passed to
configure.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are watching all bug changes.</li>
      </ul>
    </body>
</html>