Quanah Gibson-Mount:
> When I execute postconf -d mynetworks, it returns:
> 
> zimbra@zre-ldap002:~$ postconf -d mynetworks
> mynetworks = 127.0.0.0/8 10.137.242.0/24 [::1]/128 [fc00:10:137:242::]/64 
> [fe80::%eth0]/64

Try this. Build Postfix without installing it, then execute
``bin/postconf -d'' to check that Postfix removes the datalink
suffix that is added by the system.

        Wietse

*** ./src/global/mynetworks.c-  Mon Jan  2 20:18:58 2012
--- ./src/global/mynetworks.c   Mon Oct 29 14:15:06 2012
***************
*** 59,64 ****
--- 59,65 ----
  #include <mask_addr.h>
  #include <argv.h>
  #include <inet_proto.h>
+ #include <split_at.h>
  
  /* Global library. */
  
***************
*** 252,257 ****
--- 253,260 ----
                          MAI_V6ADDR_BITS - shift);
                SOCKADDR_TO_HOSTADDR(SOCK_ADDR_PTR(&net6), SOCK_ADDR_LEN(&net6),
                                     &hostaddr, (MAI_SERVPORT_STR *) 0, 0);
+               /* Remove unwanted datalink suffix from IPv6 address. */
+               (void) split_at(hostaddr.buf, '%');
                vstring_sprintf_append(result, "[%s]/%d ",
                                     hostaddr.buf, MAI_V6ADDR_BITS - shift);
                net_mask_count++;
*** ./src/global/Makefile.in-   Sun Sep 23 19:28:57 2012
--- ./src/global/Makefile.in    Mon Oct 29 14:17:03 2012
***************
*** 1758,1763 ****
--- 1758,1764 ----
  mynetworks.o: ../../include/myaddrinfo.h
  mynetworks.o: ../../include/name_mask.h
  mynetworks.o: ../../include/sock_addr.h
+ mynetworks.o: ../../include/split_at.h
  mynetworks.o: ../../include/sys_defs.h
  mynetworks.o: ../../include/vbuf.h
  mynetworks.o: ../../include/vstring.h

Reply via email to