Opened 12 years ago

Closed 11 years ago

#2229 closed enhancement (wontfix)

Users can use the cache of a reader with different group

Reported by: Kayvan Owned by: corsair
Priority: major Component: General
Severity: medium Keywords:
Cc: Sensitive: no

Description

Revision

6059

Issue Description

Under the circumstances, users can use the cache of a reader with different group

When the issue occurs

If a group is shared between them

Attachments (3)

oscam.log (3.7 KB ) - added by Kayvan 12 years ago.
oscam.server (2.2 KB ) - added by Kayvan 12 years ago.
oscam.user (703 bytes ) - added by Kayvan 12 years ago.

Download all attachments as: .zip

Change History (10)

by Kayvan, 12 years ago

Attachment: oscam.log added

by Kayvan, 12 years ago

Attachment: oscam.server added

by Kayvan, 12 years ago

Attachment: oscam.user added

comment:1 by pooyair, 12 years ago

Owner: set to corsair

comment:2 by littlesat, 12 years ago

I think so what??? I do not think this can be blocked on the cache level...

comment:3 by Kayvan, 12 years ago

It wasn't like this before, this will cause a problem when USR2 sends the ECM earlier than USR1 to the reader ( Only group 32 ) and it can't decode it, then USR1 get the same result, Because it uses the same cache and none of the ECM(s) would sent to the fallback reader(s).

comment:4 by Deas, 12 years ago

Resolution: invalid
Status: newclosed

oscam has one global cache. each user on the server can access the cache and it does not matter which group he is in. this is since a very long time like this.

if user one sends a request to the server he is not allowed the request is denied by a filter (group, caid, etc.) and won´t generate a not found. if user two requests the same channel and he is allowed to request it normal porocessing takes place.

comment:5 by fu_man_tschu, 12 years ago

Resolution: invalid
Status: closedreopened

As written here http://www.oscam.cc/wbb3/index.php?page=Thread&threadID=17334 i think the ticket is valid

Say you have two users in different groups:

  • USR1 (Group 1) has access only to proxies
  • USR2 (Group 2) has access to the local card

When they are both watching the same channel, following can happen:

2012/09/10 11:44:09 1020600 c USR2 (XXXX&000000/0000/ZZZZ/58:450C): found (144 ms) by localcard (L/1/2/2) - ChannelXYZ
2012/09/10 11:44:16 1020600 c USR2 (XXXX&000000/0000/ZZZZ/58:3F39): found (131 ms) by localcard (L/1/2/2) - ChannelXYZ
2012/09/10 11:44:23 1020600 c USR2 (XXXX&000000/0000/ZZZZ/58:5E37): found (129 ms) by localcard (L/1/2/2) - ChannelXYZ
2012/09/10 11:44:33 101C200 c USR1 (XXXX&000000/0000/ZZZZ/58:3A96): found (610 ms) by PROXY - ChannelXYZ
2012/09/10 11:44:33 1020600 c USR2 (XXXX&000000/0000/ZZZZ/58:3A96): cache2 (614 ms) by PROXY (F/0/2/2) - ChannelXYZ
2012/09/10 11:44:47 101C200 c USR1 (XXXX&000000/0000/ZZZZ/58:42C6): timeout (10000 ms) by PROXY - ChannelXYZ
2012/09/10 11:44:47 1020600 c USR2 (XXXX&000000/0000/ZZZZ/58:42C6): timeout (9997 ms) (F/0/2/2) - ChannelXYZ
2012/09/10 11:44:57 101C200 c USR1 (XXXX&000000/0000/ZZZZ/58:0FE9): timeout (10000 ms) by PROXY - ChannelXYZ

USR2 gets the slower ECM-Times of USR1 and even the timeouts. This shouldn't happen, because USR2 has access to the local card.

Actually the cache should be shared, but USR2 shouldn't depend on the USR1 request.
Ideal would be:

  • USR1 makes his ECM-Request via proxy
  • USR2 makes his own request via local card
  • USR2s Request is faster than USR1 an is written to the cache
  • USR1 can use the faster answer via cache as long USR2 is on the same channel

I'm using Oscam SVN version r7362 on a MacMini running SnowLeopard.

Last edited 12 years ago by fu_man_tschu (previous) (diff)

comment:6 by avs1978, 11 years ago

Type: defectenhancement

Lets call it a feature, in stead of a defect ;-)

comment:7 by Deas, 11 years ago

Resolution: wontfix
Status: reopenedclosed

creating a own cache for each group would be a massive and in my opinion useless overhead. the only solution for your setup would be to create 2 separate oscam installations. one with the cards and one with the proxie readers. this way you can separate the traffic.

Note: See TracTickets for help on using tickets.