Re: RFC: configuring net interfaces

Francois Romieu (romieu@cogenit.fr)
Wed, 28 Mar 2001 18:27:29 +0200


Krzysztof Halasa <khc@intrepid.pm.waw.pl> écrit :
[...]
> making it universal for all types of interfaces (now, we have different
> configuration mechanisms even between different HDLC cards).

Alas :o(

> +struct hdlc_physical /* 10 bytes */
> +{
> + unsigned int interface;
> + unsigned int clock_rate;
> + unsigned short clock_type;
> +};

What do you mean with 'interface' ?

[...]
> +struct fr_protocol /* 12 bytes */
> +{
> + unsigned short lmi_type;
> + unsigned short t391;
> + unsigned short t392;
> + unsigned short n391;
> + unsigned short n392;
> + unsigned short n393;
> +};
> +
> +

* n200, t200 ?

Do we put the crc type here ?

> /*
> * Interface request structure used for socket
> * ioctl's. All interface ioctl's must have parameter
> @@ -95,6 +121,9 @@
> char ifru_slave[IFNAMSIZ]; /* Just fits the size */
> char ifru_newname[IFNAMSIZ];
> char * ifru_data;
> + struct hdlc_physical hdlc_phy;
> + struct hdlc_protocol hdlc_proto;
> + struct fr_protocol fr_proto;
> } ifr_ifru;
> };

All the structs or just an union of ?
That is: is an SIOCXXX allowed to poke into different structs or not ?

> --- linux-2.4.orig/include/linux/sockios.h Sun Nov 12 04:02:40 2000
> +++ linux-2.4/include/linux/sockios.h Wed Mar 28 16:35:23 2001
> @@ -76,6 +76,12 @@
> #define SIOCSIFDIVERT 0x8945 /* Set frame diversion options */
>
> #define SIOCETHTOOL 0x8946 /* Ethtool interface */
> +#define SIOCSHDLC_PHY 0x8947 /* set physical HDLC iface */
> +#define SIOCGHDLC_PHY 0x8948 /* get physical HDLC iface */

What type of operation do you mean by get/set ?

> +#define SIOCSHDLC_PROTO 0x8949 /* set HDLC protocol */
> +#define SIOCGHDLC_PROTO 0x894A /* get HDLC protocol */

While we're here, could we agree on the notion of raw hdlc, i.e. :
- no address, no command. crc present (ARPHRD_RAWHDLC ?);
- no address, no command, no crc (ARPHRD_PATHOLOGICHDLC ?).

-- 
Ueimor
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/