Re: Gettin own IP address thorugh ioctl in kernel space.

From: Parag N(àààà)
Date: Wed Jul 19 2006 - 05:50:51 EST


Hi,
On 7/19/06, Chinmaya Mishra <chinmaya4@xxxxxxxxx> wrote:
Hi,

Can you provide an example how to invoke ioctl on
device in kernel module.

For example. I want to find out the IP address of
my eth0 and I want to make SIOCSIFADDR on it from
kernel module.


At user space i am doing it like this.....

unsigned long *ip;
char *iface;
int sockfd;
struct ifreq ifr;
strcpy(ifr.ifr_name, iface); // interface name 'eth0'
sockfd = socket(AF_INET,SOCK_DGRAM,0);
ioctl(sockfd, SIOCGIFADDR, (char*)&ifr);
memcpy(ip, &(ifr.ifr_addr.sa_data[2]),4); //Copy the ip addr
close(sockfd);

How to port this in keernel space.
Check point 29 from http://kasperd.net/~kasperd/comp.os.linux.development.faq.
Modify that source code according to your needs.
Regards,
Parag.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/