RAW socket and CONFIG_FILTER


 
Thread Tools Search this Thread
Top Forums Programming RAW socket and CONFIG_FILTER
# 1  
Old 05-05-2007
RAW socket and CONFIG_FILTER

Hi,
Im doin a project on DHCp client-server setup. i have to use RAW sockets in the code for this. The call PF_PACKET, SOCK_RAW as the first two arguments. The code compiles but when i try to start the Dhcp client, I get an error saying "Make sure CONFIG_PACKET and CONFIG_FILTER is enabled". I tried to build the kernel using a source tree. I found CONFIG_PACKET=y but didnt find CONFIG_FILTER. So i added a line CONFIG_FILTER=y. I got the foll error
Heres a full snapshot of the error :
bash-3.1# make
HOSTLD scripts/kconfig/conf
scripts/kconfig/conf -s arch/i386/Kconfig
.config:384:warning: trying to assign nonexistent symbol FILTER
#
# configuration written to .config
#
CHK include/linux/version.h
UPD include/linux/version.h
CHK include/linux/utsrelease.h
UPD include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-i386
ln: creating symbolic link `include/asm' to `asm-i386': Operation not permitted
make: *** [include/asm] Error 1
bash-3.1#
How else can i add it? Is there ne other way out. Im using Fedora 6 with 2.6.20 source tree.

Pls help
Thanks in advance
# 2  
Old 05-05-2007
CONFIG_FILTER has been removed in kernel 2.6.x. Your programs will need to be updated to use another mechanism to compile on a 2.6 kernel, or fallback to use kernel 2.4 if you absolutely want it.

The closest substitute:
http://www.netfilter.org/projects/li...eue/index.html
# 3  
Old 05-06-2007
Hi
Is there ne other way i can use the foll socket call in kernel 2.6.18 without getting the error message saying "make sure CONFIG_PACKET and CONFIG_FILTER is enabled in the kernel" :
sock = socket(PF_PACKET, SOCK_RAW, htons((short)ETH_P_ALL)

Thanks
# 4  
Old 05-06-2007
Quote:
Originally Posted by yannifan
Im doin a project on DHCp client-server setup. i have to use RAW sockets in the code for this.
Is this an educational project and you are supposed to be on the receiving end?

Last edited by porter; 05-06-2007 at 04:57 AM..
# 5  
Old 05-06-2007
@porter
A bit of both. Its my project for graduation hence educational, but i have to finish it. so...

I did try the packages from netfilter.org
When i run the DHCP client, i get the foll messages :
May 6 13:33:20 localhost dhclient: socket: Invalid argument - make sure
May 6 13:33:20 localhost dhclient: CONFIG_PACKET (Packet socket) and CONFIG_FILTER
May 6 13:33:20 localhost dhclient: (Socket Filtering) are enabled in your kernel
May 6 13:33:20 localhost dhclient: configuration!
May 6 13:33:20 localhost dhclient:

So does this mean, filtering is enabled and i can run my project?
Thanks
Login or Register to Ask a Question

Previous Thread | Next Thread

8 More Discussions You Might Find Interesting

1. Programming

Raw Socket Programming - Efficient Packet Sniffer

Hi, I have the requirement to sniff packets from the Ethernet card on my Linux machine and process it and feed it to a RANAP protocol stack. So far I have written the raw packet sniffer and successfully sniffing packets and do little processing. However, for huge number of packets ... (9 Replies)
Discussion started by: rstnsrr
9 Replies

2. IP Networking

Clarification - Setting socket options at the same time when socket is listening

I need clarification on whether it is okay to set socket options on a listening socket simultaneously when it is being used in an accept() call? Following is the scenario:- -- Task 1 - is executing in a loop - polling a listen socket, lets call it 'fd', (whose file descriptor is global)... (2 Replies)
Discussion started by: jake24
2 Replies

3. Programming

Error with socket operation on non-socket

Dear Experts, i am compiling my code in suse 4.1 which is compiling fine, but at runtime it is showing me for socket programming error no 88 as i searched in errno.h it is telling me socket operation on non socket, what is the meaning of this , how to deal with this error , please... (1 Reply)
Discussion started by: vin_pll
1 Replies

4. Programming

socket function to read a webpage (socket.h)

Why does this socket function only read the first 1440 chars of the stream. Why not the whole stream ? I checked it with gdm and valgrind and everything seems correct... #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <string.h> #include... (3 Replies)
Discussion started by: cyler
3 Replies

5. UNIX for Advanced & Expert Users

Why root permissions required for creating of RAW Socket

To create RAW socket in Unix/Linux why should one have root permissions? Any other work around to create raw sockets in Unix/Linux using a normal login id? Since I don't have super user credentials and I want to create RAW sockets. Let me know if you are aware of any work around. (3 Replies)
Discussion started by: anilgurwara
3 Replies

6. Programming

which socket should socket option on be set

Hi all, On the server side, one socket is used for listening, the others are used for communicating with the client. My question is: if i want to set option for socket, which socket should be set on? If either can be set, what's the different? Again, what's the different if set option... (1 Reply)
Discussion started by: blademan100
1 Replies

7. UNIX for Advanced & Expert Users

connect problem for sctp socket (ipv6 socket) - Runtime fail Invalid Arguments

Hi, I was porting ipv4 application to ipv6; i was done with TCP transports. Now i am facing problem with SCTp transport at runtime. To test SCTP transport I am using following server and client socket programs. Server program runs fine, but client program fails giving Invalid Arguments for... (0 Replies)
Discussion started by: chandrutiptur
0 Replies

8. IP Networking

Changing the source IP?? using RAW Socket.

Hi There, Suppoose we have configured logical Interface 2.2.2.2 on a server with Primary IP 1.1.1.1. Now when I am sending a packet from this server, is it possible to make receiver assume that this packet has come from IP 2.2.2.2 and not 1.1.1.1 I think it is possibl using RAW sockets??? but... (1 Reply)
Discussion started by: Ankit_Jain
1 Replies
Login or Register to Ask a Question