Hi Pablo,
this is unfortunately not what I would like to see. The flag should be hidden in the ipaccess.c / hsl.c driver, and it should not be globally visible.
I think it's a bid odd to handle a special case like this in the generic code / data structure.
By definition, the driver has to cope with the fact that the line_update() function is called multiple times. That's what the name also indicates. If a driver wants to do something different, it has to solve the problem on the driver side.
Each driver can allocate its own structure and tie it to line->driver_data, like the misdn.c driver is doing it. In there it can handle local state like 'has this line been initialized before and do I thus want to skip another round of initialization'.
Regards, Harald