unable to copy data from the kernel to the user space
Julian Elischer
julian at elischer.org
Wed Jul 7 18:23:18 PDT 2004
hmmm
On Wed, 7 Jul 2004, pradeep reddy punnam wrote:
> hi hackers,
>
> i am new to kernel hacking , i am just trying to play with the networking code.
> i wrote a system call that will copy the mbuf address from the kernel to user space..
> the sys call look like this
>
> 355 STD BSD { int sn_rqueue(struct mbuf *m);}
>
> and the code in the sn_rqueue syscall look like
> struct mbuf *x;
> copyout(x,uap->m;sizeof(x));
sizeof(*x)
>
> and the code in the user program look like
> struct mbuf *m=NULL;
> syscall(355,m);
you are calling the syscall with a NULL pointer..
of course the copyout will fail
but you are not looking at teh error result..
I think you want:
if you want the address of the mbuf to be sent to user space. (Why on
earth?) then you need.
355 STD BSD { int sn_rqueue(struct mbuf **m);}
copyout(&x, uap->m, sizeof(x))
struct mbuf *m=NULL;
syscall(355,&m);
>
> and when i tryed to read the ' m ' value it still stays as NULL,
> may be this question is trivial for u guys..but i was struck at this point...
> i will be very thankful if somebody can help in this...
>
I'm guessing you want to look at the mbuf directly using /dev/kmem?
there has to be a better way :-)
>
> -prady
>
>
>
>
>
> ---------------------------------
> Do you Yahoo!?
> Yahoo! Mail - 50x more storage than other providers!
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"
>
More information about the freebsd-hackers
mailing list