X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=net%2Fappletalk%2Fddp.c;h=7b1eb9a4fc96881a68f9c23e92ea1679edc8cb4d;hb=4854c7b27f0975a2b629f35ea3996d2968eb7c4f;hp=a5144e43aae136896ae646e4048fbdc13b75b25e;hpb=5c3eee79128c372a81a83665be2332a000944280;p=powerpc.git diff --git a/net/appletalk/ddp.c b/net/appletalk/ddp.c index a5144e43aa..7b1eb9a4fc 100644 --- a/net/appletalk/ddp.c +++ b/net/appletalk/ddp.c @@ -52,6 +52,7 @@ */ #include +#include #include #include #include /* For TIOCOUTQ/INQ */ @@ -1818,6 +1819,22 @@ static int atalk_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg) return rc; } + +#ifdef CONFIG_COMPAT +static int atalk_compat_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg) +{ + /* + * All Appletalk ioctls except SIOCATALKDIFADDR are standard. And + * SIOCATALKDIFADDR is handled by upper layer as well, so there is + * nothing to do. Eventually SIOCATALKDIFADDR should be moved + * here so there is no generic SIOCPROTOPRIVATE translation in the + * system. + */ + return -ENOIOCTLCMD; +} +#endif + + static struct net_proto_family atalk_family_ops = { .family = PF_APPLETALK, .create = atalk_create, @@ -1835,6 +1852,9 @@ static const struct proto_ops SOCKOPS_WRAPPED(atalk_dgram_ops) = { .getname = atalk_getname, .poll = datagram_poll, .ioctl = atalk_ioctl, +#ifdef CONFIG_COMPAT + .compat_ioctl = atalk_compat_ioctl, +#endif .listen = sock_no_listen, .shutdown = sock_no_shutdown, .setsockopt = sock_no_setsockopt,