Daniel Winkler
mailings at danielwinkler.de
Wed Sep 21 10:40:21 EDT 2005
Hi Jorey, thanks for you quick help. > > from mod_python import psp > > import dirigent > > What's in dirigent? "Dirigent" is the German word for conductor. A brief overview of the project: Several conductors (and their helpers) of several choirs (=Chor) should be able to manage and plan their rehearsals (? sorry, I am not a native English speaker) etc. The module "dirigent" contains code to check the incoming request and identify the calling user. (Authentication is done via SSL certs; no sessions, because I wanted something "stateless") The current user id should be stored in "dirigent.id". It should be resolved only once per request and there is only one single user per request, so I thought I could store this globally ... > Things like this will work consistently in the interpreter, but not in > all apache MPMs. Do you really need to alter this module attribute in > place? I'd look for an alternative, as it's not reliable across > environments. Can you simply store it in a normal variable within the > function, and return it or process it further? Yes, I guess I can rearrange this. I thought a global variable could reduce the calling overhead. > > def _acltest_ok(chorID, dirigentID): > > Try setting defaults here, just in case: > > def _acltest_ok(chorID = 0, dirigentID = 0): > > But I'm getting the sense that dirigentID may be the suspect. It's > interesting that you're trying to set dirigent.id globally, but don't > attempt to take advantage of it here. While I'm not advocating it, why > aren't you importing dirigent.id directly, instead of passing it as an > argument? Mh, yes, you are right. The idea behind was to leave this more general so I can check the access control information of other conductors, too, not only the current user. But as mentioned above, I will try to avoid the global storage. > Also, your logic is a little circuitous, and you've mixed ways of > dealing with what you expect to be the same variables. Yes, might be. Maybe it's better to write it new from scratch than trying to adapt my old PHP code that was written with a slightly different approach ... > Just some suggestions, I hope they are helpful. Thank you very much. Daniel
|