This is related to my thread from yesterday titled "Previously Working OpenID Consumer no longer working".
I ran into an issue with an OpenID provider I am working with is treating backchannel requests from our OpenID consumer as bot requests and subjecting them to blocking/rate limiting, To get around this, the OpenID provider requested we set UserAgent to something specific to our OpenID consumer and they would then excude this UserAgent from this.
To accomplish this, I have tweaked ParanoidHTTPFetcher and PlainHTTPFetcher in lib/Auth/Yadis/ so that the "POST" requests set user agent similarly to how the get requests do by using the Auth_OpenID_USER_AGENT constant, have tweaked HTTPFetcher so it only defines this constant if it is not defined, and have defined this constant in a fashion specific to our OpenID consumer at the top of my config/config.php. This seems to be working, and the constant definition change in HTTPFetcher eliminated the 'spurious' constant is already defined exception/backtrace in the simpleSAMLphp log file.
Since I'm not well versed in PHP programming, simpleSAMLphp internals, I'm looking for some feedback regarding alternative/better ways to accomplish this.
And since I'm not familar with how simpleSAMLphp accomplishes/incorporates changes such as these, I'm also looking for some direction on how I might best go about getting this change set (or a better/more efficent version of it) picked up and included in a future version simpleSAMLphp so I can eliminate the need to reintegrate these changes when we migrate forward to newer versions of simpleSAMLphp (we expect to have at least a handful of sites running this OpenID consumer in a fashion that will require these changes).
Thanks in advance for your feedback,
Todd