On 15:41, Tudor Golubenco wrote:
> On 4/21/06, Lorin Scraba wrote:
> > Salut.
> > Am modificat o bucata de cod ( compilata built-in ) din kernel ca sa
> > apeleze o functie dintr-un
> > modul.
> > Se compileaza tot frumos ( modul + built-in stuff ) dar cand ajunge la
> > partea de link-are apare o horoare cum ca functia respectiva nu are nici
> > o referinta.
> >
> > In Module.symvers functia apare, in codul build-in e definita ca
> > 'extern' , in modul o export cu macro-ul EXPORT_SYMBOL_GPL().
> >
> > In codul built-in am ceva de genul:
> >
> > extern int (*functie)(struct sk_buff *);
> >
> > if ( functie && (*functie)(skb) )
> > printk(...);
> >
> > In modul:
> >
> > int functie(....) {
> > }
> > EXPORT_SYMBOL_GPL(functie)
> >
>
> ??ncearc?? ceva de genul:
>
> ??n kernel:
>
> int (*functie)(struct sk_buff *);
> ...
> void set_functie(int (*f)(struct sk_buff*)){
> functie = f;
> }
> EXPORT_SYMBOL(set_functie);
> ...
> if (functie) {
> functie(skb);
> }
>
> Iar in modul:
>
> extern void set_functie(int (*f)(struct sk_buff*));
> ....
> set_functie(functia_mea);
>
> > Multumesc
> > --
> > + Lorin
> > + BOFH excuse #407: Route flapping at the NAP.
>
> Dac?? ai nevoie pentru a intercepta pachete, poate ar trebui sa iei ??n
> considerare interfa??a netfilter.
>
> Tudor
Multam. Merge.
--
+ Lorin
+ BOFH excuse #397: T-1's congested due to porn traffic to the news server.
_______________________________________________
RLUG mailing list
[email protected]
http://lists.lug.ro/mailman/listinfo/rlug