-
Notifications
You must be signed in to change notification settings - Fork 848
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Don't call php_uname function if disabled by php.ini #829
Don't call php_uname function if disabled by php.ini #829
Conversation
c859e8a
to
392f8af
Compare
@@ -260,7 +260,8 @@ private static function _defaultHeaders($apiKey, $clientInfo = null) | |||
$uaString = 'Stripe/v1 PhpBindings/' . Stripe::VERSION; | |||
|
|||
$langVersion = phpversion(); | |||
$uname = php_uname(); | |||
$uname_disabled = in_array('php_uname', explode(',', ini_get('disable_functions'))); | |||
$uname = $uname_disabled ? '(disabled)' : php_uname(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor but have we considered making that call once when the library or client is initialized and then use a cached value instead of doing that on each request?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll probably do just that if/when I ever get to rewriting the HTTP client layer.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
@@ -260,7 +260,8 @@ private static function _defaultHeaders($apiKey, $clientInfo = null) | |||
$uaString = 'Stripe/v1 PhpBindings/' . Stripe::VERSION; | |||
|
|||
$langVersion = phpversion(); | |||
$uname = php_uname(); | |||
$uname_disabled = in_array('php_uname', explode(',', ini_get('disable_functions'))); | |||
$uname = $uname_disabled ? '(disabled)' : php_uname(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll probably do just that if/when I ever get to rewriting the HTTP client layer.
Addresses #828. Some hosting providers disable the php_uname function, presumably by adding it to 'disable_functions' in php.ini. This PR retrieves the value of 'disable_functions', parses the comma-separated list it to see if 'php_uname' is contained. In that case, we hardcode uname to "(disabled)" to avoid calling php_uname.
r? @ob-stripe
cc @remi-stripe