Opened 10 years ago

Closed 9 years ago

#3545 closed defect (expired)

deleting services not possible during runtime

Reported by: Deas Owned by:
Priority: minor Component: General
Severity: medium Keywords:
Cc: Sensitive: no

Description

consider the following situation:

you have a few services, let´s call them a, b, c and d.

you assign them to your users.

now service a get´s obsolete and you delete the service. you will get rejects until you restart oscam.

Change History (5)

comment:1 by Deas, 10 years ago

after i read what i wrote i must explain the last sentence better.

service a get´s obsolete, you delete it from all users. until here everything is working fine.

now after you deleted the service from your users you delete the service itself, immediate all users will get invalid/rejected group for all other services. you must restart oscam to get it running again.

comment:2 by theparasol, 10 years ago

If I remember correctly services are finally 64 bits that are bitmasked for each service.
Hence the max of 64 services. So on removal of service all the bitmasks of all services seems to be removed instead of just the sole bit for a specific service.

code is here:
http://www.streamboard.tv/oscam/browser/trunk/module-webif.c#L4494

Perhaps all the code in that function could be replace with something simple like this:

*orgsidtab &=~ (1 << position); flag this bit/group as unused

Last edited 10 years ago by theparasol (previous) (diff)

comment:3 by Deas, 10 years ago

yes it is a 64 bit bitmask. we could set it unused or rebuild the complete bitmask which would be a clean approach - but i don´t know if this is possible during runtime.

comment:4 by FilipeAmadeuO, 10 years ago

I never understood why the oscam.users is updated automaticaly when updating it using webif and oscam.cfg, oscam.server and other not.
Why not make it updatable during runtime ?
Thanks

comment:5 by Deas, 9 years ago

Resolution: expired
Status: newclosed
Note: See TracTickets for help on using tickets.