[Team2013] c constructor attribute

Ionut Nicu ionut.nicu at mindbit.ro
Fri Apr 12 12:25:55 EEST 2013


Buna Andreea,

Cred ca ai dreptate. Ar trebui sa existe o functie de initializare a
switch-ului sw_init (sau cum vreti voi sa o botezati) care sa fie comuna
tuturor backend-urilor, pentru ca nu face nimic specific vreunui
back-end. Prin "comuna tuturor backend-urilor" eu inteleg ca nu ar
trebui sa fie membru in structura switch_operations.

Functia asta ar tb sa fie adnotata cu attribute constructor si sa
primeasca ca parametru un pointer catre switch_operations pentru a putea
accesa metodele specifice back-endului curent pentru crearea de
vlan-uri). Ar trebui sa apeleze shared_init() pentru crearea segmentului
de memorie shared, apoi folosind pointer-ul la switch_operations sa
creeze vlan-urile default.

E ok pt voi abordarea asta?

Ionut.

On Wed, 2013-04-10 at 20:10 +0300, Andreea-Cristina Hodea wrote:
> Salut,
> 
> 
> Cred ca pana la urma nu e ok sa adaugam vlan-urile default din
> shared_init. Am scris de ce aici[1], asa ca as propune ca sw_api sa
> aiba o functie init cu atributul constructor, fie ea sw_init, care
> (poate printre altele) sa adauge vlan-urile default. In LiSA
> Middleware asta ar insemna sa apeleze lisa_ctx.vlan_add pentru fiecare
> vlan default.
> 
> 
> Ceea ce nu stiu, insa, este ce se intampla daca o alta implementare a
> API-ului omite sa implementeze sw_init? La incarcarea bibliotecii
> dinamice primesc eroare sau raman cu vlan-urile default lipsa? Am mai
> citit cate ceva despre acest atribut aici[2].
> 
> 
> [1] https://github.com/lisa-project/lisa-user/issues/10
> [2] http://stackoverflow.com/questions/2053029/how-exactly-does-attribute-constructor-work
> 
> 
> Andreea
> _______________________________________________
> Team2013 mailing list
> Team2013 at lisa.mindbit.ro
> http://lisa.mindbit.ro/mailman/listinfo/team2013




More information about the Team2013 mailing list