On Wed, 2010-09-15 at 19:44 +1200, Amos Jeffries wrote: > On 15/09/10 18:12, Andrew Beverley wrote: > > On Wed, 2010-09-15 at 02:06 +0000, Amos Jeffries wrote: > >> On Tue, 14 Sep 2010 23:55:20 +0100, Andrew Beverley<[email protected]> > >> wrote: > >>>> * Config.accessList.outgoingTos, Config.accessList.clientsideTos, > >>>> Config.accessList.outgoingNfmark, Config.accessList.clientsideNfmark > >> can > >>>> become members of the Qos scope Config object. All the parsing /free > >>>> stuff > >>>> can be moved there too with some #define parse_...() etc for the legacy > >>>> parser. > >>>> > >>> > >>> I've moved all the configuration variables and functions to the Qos > >>> scope. I have renamed parse_acl_tos(acl_tos ** head) as > >>> Ip::Qos::Config::parseConfigAclTos(acl_tos ** head). > >>> > >>> However, I'm unable to compile because of the following error: > >>> > >>> Qos.cc: In member function ‘void > >>> Ip::Qos::Config::parseConfigAclTos(acl_tos**)’: > >>> Qos.cc:377: error: argument of type ‘void (Ip::Qos::Config::)(void*)’ > >> does > >>> not match ‘void (*)(void*)’ > >>> > >>> The code at line 377 is: > >>> > >>> CBDATA_INIT_TYPE_FREECB(acl_tos, freedConfigAclTos); > >>> > >>> I have > >>> > >>> CBDATA_TYPE(acl_tos); > >>> > >>> specified before the parseConfigAclTos function. > >>> > >>> Could you give me any ideas as to what I am doing wrong here? If you > >>> need me to send through any more of the code then please let me know. > >> > >> Do you have this with a cast? > >> #define parse_acl_tos(X) Ip::Qos::Config::parseConfigAclTos((acl_tos > >> **)X) > >> > >> with the cf.data.pre "TYPE: acl_tos" unchanged. > > > > No, I had changed it. However, I have now changed it back to the above, > > but still get the same error. Any other ideas? > > > > Qos.cc: In member function ‘void > > Ip::Qos::Config::parseConfigAclTos(acl_tos**)’: > > Qos.cc:377: error: argument of type ‘void (Ip::Qos::Config::)(void*)’ does > > not match ‘void (*)(void*)’ > > > > I have attached my current Qos.cc and Qos.h > > > > Thanks, > > > > Andy > > > > Darn CBDATA strikes again. What the hell, lets skip this shuffle change > then and get the rest of the work in separately.
So have the configuration variables in Qos class (I already have this working), and keep the config functions in cache_cf.cc? Thanks, Andy
