remove obsolete nd6 ioctls

2013-08-15 Thread Alexander Bluhm
Hi,

After converting the last user of ioctl(SIOCGDRLST_IN6) to sysctl,
I would like to remove dead kernel ioctl code.

Is it save to just delete this?

ok?

bluhm

Index: netinet6/in6.c
===
RCS file: /data/mirror/openbsd/cvs/src/sys/netinet6/in6.c,v
retrieving revision 1.116
diff -u -p -u -p -r1.116 in6.c
--- netinet6/in6.c  20 Jun 2013 12:03:40 -  1.116
+++ netinet6/in6.c  15 Aug 2013 15:06:06 -
@@ -361,10 +361,7 @@ in6_control(struct socket *so, u_long cm
if (!privileged)
return (EPERM);
/* FALLTHROUGH */
-   case OSIOCGIFINFO_IN6:
case SIOCGIFINFO_IN6:
-   case SIOCGDRLST_IN6:
-   case SIOCGPRLST_IN6:
case SIOCGNBRINFO_IN6:
return (nd6_ioctl(cmd, data, ifp));
}
Index: netinet6/in6_var.h
===
RCS file: /data/mirror/openbsd/cvs/src/sys/netinet6/in6_var.h,v
retrieving revision 1.40
diff -u -p -u -p -r1.40 in6_var.h
--- netinet6/in6_var.h  17 Jun 2013 18:02:24 -  1.40
+++ netinet6/in6_var.h  15 Aug 2013 15:03:46 -
@@ -400,11 +400,6 @@ struct in6_rrenumreq {
 
 #define SIOCGIFAFLAG_IN6   _IOWR('i', 73, struct in6_ifreq)
 
-#define SIOCGDRLST_IN6 _IOWR('i', 74, struct in6_drlist)
-#define SIOCGPRLST_IN6 _IOWR('i', 75, struct in6_prlist)
-#ifdef _KERNEL
-#define OSIOCGIFINFO_IN6   _IOWR('i', 76, struct in6_ondireq)
-#endif
 #define SIOCGIFINFO_IN6_IOWR('i', 108, struct in6_ndireq)
 #define SIOCSNDFLUSH_IN6   _IOWR('i', 77, struct in6_ifreq)
 #define SIOCGNBRINFO_IN6   _IOWR('i', 78, struct in6_nbrinfo)
Index: netinet6/nd6.c
===
RCS file: /data/mirror/openbsd/cvs/src/sys/netinet6/nd6.c,v
retrieving revision 1.99
diff -u -p -u -p -r1.99 nd6.c
--- netinet6/nd6.c  31 May 2013 15:04:24 -  1.99
+++ netinet6/nd6.c  15 Aug 2013 15:04:50 -
@@ -1238,111 +1238,13 @@ nd6_rtrequest(int req, struct rtentry *r
 int
 nd6_ioctl(u_long cmd, caddr_t data, struct ifnet *ifp)
 {
-   struct in6_drlist *drl = (struct in6_drlist *)data;
-   struct in6_oprlist *oprl = (struct in6_oprlist *)data;
struct in6_ndireq *ndi = (struct in6_ndireq *)data;
struct in6_nbrinfo *nbi = (struct in6_nbrinfo *)data;
-   struct nd_defrouter *dr;
-   struct nd_prefix *pr;
struct rtentry *rt;
-   int i = 0, error = 0;
+   int error = 0;
int s;
 
switch (cmd) {
-   case SIOCGDRLST_IN6:
-   /*
-* obsolete API, use sysctl under net.inet6.icmp6
-*/
-   bzero(drl, sizeof(*drl));
-   s = splsoftnet();
-   TAILQ_FOREACH(dr, nd_defrouter, dr_entry) {
-   if (i = DRLSTSIZ)
-   break;
-   drl-defrouter[i].rtaddr = dr-rtaddr;
-   if (IN6_IS_ADDR_LINKLOCAL(drl-defrouter[i].rtaddr)) {
-   /* XXX: need to this hack for KAME stack */
-   drl-defrouter[i].rtaddr.s6_addr16[1] = 0;
-   } else
-   log(LOG_ERR,
-   default router list contains a 
-   non-linklocal address(%s)\n,
-   ip6_sprintf(drl-defrouter[i].rtaddr));
-
-   drl-defrouter[i].flags = dr-flags;
-   drl-defrouter[i].rtlifetime = dr-rtlifetime;
-   drl-defrouter[i].expire = dr-expire;
-   drl-defrouter[i].if_index = dr-ifp-if_index;
-   i++;
-   }
-   splx(s);
-   break;
-   case SIOCGPRLST_IN6:
-   /*
-* obsolete API, use sysctl under net.inet6.icmp6
-*
-* XXX the structure in6_prlist was changed in backward-
-* incompatible manner.  in6_oprlist is used for SIOCGPRLST_IN6,
-* in6_prlist is used for nd6_sysctl() - fill_prlist().
-*/
-   /*
-* XXX meaning of fields, especially raflags, is very
-* different between RA prefix list and RR/static prefix list.
-* how about separating ioctls into two?
-*/
-   bzero(oprl, sizeof(*oprl));
-   s = splsoftnet();
-   LIST_FOREACH(pr, nd_prefix, ndpr_entry) {
-   struct nd_pfxrouter *pfr;
-   int j;
-
-   if (i = PRLSTSIZ)
-   break;
-   oprl-prefix[i].prefix = pr-ndpr_prefix.sin6_addr;
-   oprl-prefix[i].raflags = pr-ndpr_raf;
-   

Re: remove obsolete nd6 ioctls

2013-08-15 Thread Mike Belopuhov
On 15 August 2013 17:34, Alexander Bluhm alexander.bl...@gmx.net wrote:
 Hi,

 After converting the last user of ioctl(SIOCGDRLST_IN6) to sysctl,
 I would like to remove dead kernel ioctl code.

 Is it save to just delete this?

 ok?

 bluhm


if ports are fine with it, i'm fine as well (:



Re: remove obsolete nd6 ioctls

2013-08-15 Thread Henning Brauer
* Mike Belopuhov m...@belopuhov.com [2013-08-15 17:38]:
 On 15 August 2013 17:34, Alexander Bluhm alexander.bl...@gmx.net wrote:
  After converting the last user of ioctl(SIOCGDRLST_IN6) to sysctl,
  I would like to remove dead kernel ioctl code.
 
  Is it save to just delete this?
 
  ok?
 if ports are fine with it, i'm fine as well (:

what Sir Mike said.

-- 
Henning Brauer, h...@bsws.de, henn...@openbsd.org
BS Web Services GmbH, http://bsws.de, Full-Service ISP
Secure Hosting, Mail and DNS Services. Dedicated Servers, Root to Fully Managed
Henning Brauer Consulting, http://henningbrauer.com/