{"action":"opened","number":2147,"pull_request":{"url":"https://api.github.com/repos/php/php-src/pulls/2147","id":87583724,"html_url":"https://github.com/php/php-src/pull/2147","diff_url":"https://github.com/php/php-src/pull/2147.diff","patch_url":"https://github.com/php/php-src/pull/2147.patch","issue_url":"https://api.github.com/repos/php/php-src/issues/2147","number":2147,"state":"open","locked":false,"title":"acinclude.m4: fix krb5-config detection and usage in PHP_SETUP_KERBEROS.","user":{"login":"orlitzky","id":1432135,"avatar_url":"https://avatars.githubusercontent.com/u/1432135?v=3","gravatar_id":"","url":"https://api.github.com/users/orlitzky","html_url":"https://github.com/orlitzky","followers_url":"https://api.github.com/users/orlitzky/followers","following_url":"https://api.github.com/users/orlitzky/following{/other_user}","gists_url":"https://api.github.com/users/orlitzky/gists{/gist_id}","starred_url":"https://api.github.com/users/orlitzky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orlitzky/subscriptions","organizations_url":"https://api.github.com/users/orlitzky/orgs","repos_url":"https://api.github.com/users/orlitzky/repos","events_url":"https://api.github.com/users/orlitzky/events{/privacy}","received_events_url":"https://api.github.com/users/orlitzky/received_events","type":"User","site_admin":false},"body":"When building with kerberos support (--with-kerberos), a few libraries\r\nand flags need to be added to various parts of the build system. The\r\nmost reliable way to get those flags is through the krb5-config\r\nprogram that ships with both major implementations of kerberos. The\r\nPHP_SETUP_KERBEROS macro in acinclude.m4 attempts to detect\r\nkrb5-config, and use it.\r\n\r\nHowever, there's a bug in that macro. The --with-kerberos parameter\r\naccepts a directory where the kerberos libraries can be found. When a\r\ndirectory is given, it is stored in the PHP_KERBEROS variable. The\r\nfollowing test,\r\n\r\n  if test \"$PHP_KERBEROS\" = \"yes\" && test -x \"$KRB5_CONFIG\"; then\r\n\r\nthus fails whenever a directory is passed to --with-kerberos, since it\r\ncompares a directory name against the string \"yes\". This causes\r\nkrb5-config to go unused, and some unreliable fallback logic is\r\nattempted instead. One consequence of this is that the Heimdal\r\nkerberos implementation cannot be substituted for the MIT one, at\r\nleast when a directory is passed to --with-kerberos.\r\n\r\nThis commit reverses the logic and checks for \"$PHP_KERBEROS\" != \"no\".\r\nTo confirm that this fixes the issue, one can inspect the \"-l\" library\r\nflags that get appended to the command-line. On a machine with Heimdal\r\nand the unmodified acinclude.m4, running\r\n\r\n  ./configure --with-openssl --with-kerberos=/usr\r\n\r\nwill log (for example) to config.log,\r\n\r\n  configure:18082: checking for krb5-config\r\n  configure:18101: found /usr/bin/krb5-config\r\n  configure:18114: result: /usr/bin/krb5-config\r\n  configure:18450: checking for RAND_egd\r\n  configure:18450: cc ... conftest.c ... -lgssapi_krb5 -lkrb5 ...\r\n\r\nwhich are the library names for the MIT implementation. After patching\r\nacinclude.m4 to negate the logic, the same command on the same machine\r\noutputs (to config.log):\r\n\r\n  configure:18450: cc ... conftest.c -lgssapi -lheimntlm ...\r\n\r\nThese are the correct library names for the Heimdal implementation.\r\n\r\nPHP-Bug: 73214","created_at":"2016-10-01T00:09:57Z","updated_at":"2016-10-01T00:09:57Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/php/php-src/pulls/2147/commits","review_comments_url":"https://api.github.com/repos/php/php-src/pulls/2147/comments","review_comment_url":"https://api.github.com/repos/php/php-src/pulls/comments{/number}","comments_url":"https://api.github.com/repos/php/php-src/issues/2147/comments","statuses_url":"https://api.github.com/repos/php/php-src/statuses/f3db3a80b4e81bdc6b3a2ac33db4f143a18b2c87","head":{"label":"orlitzky:fix_krb5-config_detection","ref":"fix_krb5-config_detection","sha":"f3db3a80b4e81bdc6b3a2ac33db4f143a18b2c87","user":{"login":"orlitzky","id":1432135,"avatar_url":"https://avatars.githubusercontent.com/u/1432135?v=3","gravatar_id":"","url":"https://api.github.com/users/orlitzky","html_url":"https://github.com/orlitzky","followers_url":"https://api.github.com/users/orlitzky/followers","following_url":"https://api.github.com/users/orlitzky/following{/other_user}","gists_url":"https://api.github.com/users/orlitzky/gists{/gist_id}","starred_url":"https://api.github.com/users/orlitzky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orlitzky/subscriptions","organizations_url":"https://api.github.com/users/orlitzky/orgs","repos_url":"https://api.github.com/users/orlitzky/repos","events_url":"https://api.github.com/users/orlitzky/events{/privacy}","received_events_url":"https://api.github.com/users/orlitzky/received_events","type":"User","site_admin":false},"repo":{"id":45493354,"name":"php-src","full_name":"orlitzky/php-src","owner":{"login":"orlitzky","id":1432135,"avatar_url":"https://avatars.githubusercontent.com/u/1432135?v=3","gravatar_id":"","url":"https://api.github.com/users/orlitzky","html_url":"https://github.com/orlitzky","followers_url":"https://api.github.com/users/orlitzky/followers","following_url":"https://api.github.com/users/orlitzky/following{/other_user}","gists_url":"https://api.github.com/users/orlitzky/gists{/gist_id}","starred_url":"https://api.github.com/users/orlitzky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orlitzky/subscriptions","organizations_url":"https://api.github.com/users/orlitzky/orgs","repos_url":"https://api.github.com/users/orlitzky/repos","events_url":"https://api.github.com/users/orlitzky/events{/privacy}","received_events_url":"https://api.github.com/users/orlitzky/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/orlitzky/php-src","description":"The PHP Interpreter","fork":true,"url":"https://api.github.com/repos/orlitzky/php-src","forks_url":"https://api.github.com/repos/orlitzky/php-src/forks","keys_url":"https://api.github.com/repos/orlitzky/php-src/keys{/key_id}","collaborators_url":"https://api.github.com/repos/orlitzky/php-src/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/orlitzky/php-src/teams","hooks_url":"https://api.github.com/repos/orlitzky/php-src/hooks","issue_events_url":"https://api.github.com/repos/orlitzky/php-src/issues/events{/number}","events_url":"https://api.github.com/repos/orlitzky/php-src/events","assignees_url":"https://api.github.com/repos/orlitzky/php-src/assignees{/user}","branches_url":"https://api.github.com/repos/orlitzky/php-src/branches{/branch}","tags_url":"https://api.github.com/repos/orlitzky/php-src/tags","blobs_url":"https://api.github.com/repos/orlitzky/php-src/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/orlitzky/php-src/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/orlitzky/php-src/git/refs{/sha}","trees_url":"https://api.github.com/repos/orlitzky/php-src/git/trees{/sha}","statuses_url":"https://api.github.com/repos/orlitzky/php-src/statuses/{sha}","languages_url":"https://api.github.com/repos/orlitzky/php-src/languages","stargazers_url":"https://api.github.com/repos/orlitzky/php-src/stargazers","contributors_url":"https://api.github.com/repos/orlitzky/php-src/contributors","subscribers_url":"https://api.github.com/repos/orlitzky/php-src/subscribers","subscription_url":"https://api.github.com/repos/orlitzky/php-src/subscription","commits_url":"https://api.github.com/repos/orlitzky/php-src/commits{/sha}","git_commits_url":"https://api.github.com/repos/orlitzky/php-src/git/commits{/sha}","comments_url":"https://api.github.com/repos/orlitzky/php-src/comments{/number}","issue_comment_url":"https://api.github.com/repos/orlitzky/php-src/issues/comments{/number}","contents_url":"https://api.github.com/repos/orlitzky/php-src/contents/{+path}","compare_url":"https://api.github.com/repos/orlitzky/php-src/compare/{base}...{head}","merges_url":"https://api.github.com/repos/orlitzky/php-src/merges","archive_url":"https://api.github.com/repos/orlitzky/php-src/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/orlitzky/php-src/downloads","issues_url":"https://api.github.com/repos/orlitzky/php-src/issues{/number}","pulls_url":"https://api.github.com/repos/orlitzky/php-src/pulls{/number}","milestones_url":"https://api.github.com/repos/orlitzky/php-src/milestones{/number}","notifications_url":"https://api.github.com/repos/orlitzky/php-src/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/orlitzky/php-src/labels{/name}","releases_url":"https://api.github.com/repos/orlitzky/php-src/releases{/id}","deployments_url":"https://api.github.com/repos/orlitzky/php-src/deployments","created_at":"2015-11-03T20:24:32Z","updated_at":"2016-06-09T23:05:26Z","pushed_at":"2016-10-01T00:09:10Z","git_url":"git://github.com/orlitzky/php-src.git","ssh_url":"git@github.com:orlitzky/php-src.git","clone_url":"https://github.com/orlitzky/php-src.git","svn_url":"https://github.com/orlitzky/php-src","homepage":"http://www.php.net","size":262754,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"php:master","ref":"master","sha":"0e38932d148f337db37f12f505784e76838259f3","user":{"login":"php","id":25158,"avatar_url":"https://avatars.githubusercontent.com/u/25158?v=3","gravatar_id":"","url":"https://api.github.com/users/php","html_url":"https://github.com/php","followers_url":"https://api.github.com/users/php/followers","following_url":"https://api.github.com/users/php/following{/other_user}","gists_url":"https://api.github.com/users/php/gists{/gist_id}","starred_url":"https://api.github.com/users/php/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/php/subscriptions","organizations_url":"https://api.github.com/users/php/orgs","repos_url":"https://api.github.com/users/php/repos","events_url":"https://api.github.com/users/php/events{/privacy}","received_events_url":"https://api.github.com/users/php/received_events","type":"Organization","site_admin":false},"repo":{"id":1903522,"name":"php-src","full_name":"php/php-src","owner":{"login":"php","id":25158,"avatar_url":"https://avatars.githubusercontent.com/u/25158?v=3","gravatar_id":"","url":"https://api.github.com/users/php","html_url":"https://github.com/php","followers_url":"https://api.github.com/users/php/followers","following_url":"https://api.github.com/users/php/following{/other_user}","gists_url":"https://api.github.com/users/php/gists{/gist_id}","starred_url":"https://api.github.com/users/php/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/php/subscriptions","organizations_url":"https://api.github.com/users/php/orgs","repos_url":"https://api.github.com/users/php/repos","events_url":"https://api.github.com/users/php/events{/privacy}","received_events_url":"https://api.github.com/users/php/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/php/php-src","description":"The PHP Interpreter","fork":false,"url":"https://api.github.com/repos/php/php-src","forks_url":"https://api.github.com/repos/php/php-src/forks","keys_url":"https://api.github.com/repos/php/php-src/keys{/key_id}","collaborators_url":"https://api.github.com/repos/php/php-src/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/php/php-src/teams","hooks_url":"https://api.github.com/repos/php/php-src/hooks","issue_events_url":"https://api.github.com/repos/php/php-src/issues/events{/number}","events_url":"https://api.github.com/repos/php/php-src/events","assignees_url":"https://api.github.com/repos/php/php-src/assignees{/user}","branches_url":"https://api.github.com/repos/php/php-src/branches{/branch}","tags_url":"https://api.github.com/repos/php/php-src/tags","blobs_url":"https://api.github.com/repos/php/php-src/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/php/php-src/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/php/php-src/git/refs{/sha}","trees_url":"https://api.github.com/repos/php/php-src/git/trees{/sha}","statuses_url":"https://api.github.com/repos/php/php-src/statuses/{sha}","languages_url":"https://api.github.com/repos/php/php-src/languages","stargazers_url":"https://api.github.com/repos/php/php-src/stargazers","contributors_url":"https://api.github.com/repos/php/php-src/contributors","subscribers_url":"https://api.github.com/repos/php/php-src/subscribers","subscription_url":"https://api.github.com/repos/php/php-src/subscription","commits_url":"https://api.github.com/repos/php/php-src/commits{/sha}","git_commits_url":"https://api.github.com/repos/php/php-src/git/commits{/sha}","comments_url":"https://api.github.com/repos/php/php-src/comments{/number}","issue_comment_url":"https://api.github.com/repos/php/php-src/issues/comments{/number}","contents_url":"https://api.github.com/repos/php/php-src/contents/{+path}","compare_url":"https://api.github.com/repos/php/php-src/compare/{base}...{head}","merges_url":"https://api.github.com/repos/php/php-src/merges","archive_url":"https://api.github.com/repos/php/php-src/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/php/php-src/downloads","issues_url":"https://api.github.com/repos/php/php-src/issues{/number}","pulls_url":"https://api.github.com/repos/php/php-src/pulls{/number}","milestones_url":"https://api.github.com/repos/php/php-src/milestones{/number}","notifications_url":"https://api.github.com/repos/php/php-src/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/php/php-src/labels{/name}","releases_url":"https://api.github.com/repos/php/php-src/releases{/id}","deployments_url":"https://api.github.com/repos/php/php-src/deployments","created_at":"2011-06-16T01:52:25Z","updated_at":"2016-09-30T19:10:46Z","pushed_at":"2016-09-30T23:33:25Z","git_url":"git://github.com/php/php-src.git","ssh_url":"git@github.com:php/php-src.git","clone_url":"https://github.com/php/php-src.git","svn_url":"https://github.com/php/php-src","homepage":"http://www.php.net","size":432382,"stargazers_count":10076,"watchers_count":10076,"language":"C","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":3528,"mirror_url":null,"open_issues_count":318,"forks":3528,"open_issues":318,"watchers":10076,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/php/php-src/pulls/2147"},"html":{"href":"https://github.com/php/php-src/pull/2147"},"issue":{"href":"https://api.github.com/repos/php/php-src/issues/2147"},"comments":{"href":"https://api.github.com/repos/php/php-src/issues/2147/comments"},"review_comments":{"href":"https://api.github.com/repos/php/php-src/pulls/2147/comments"},"review_comment":{"href":"https://api.github.com/repos/php/php-src/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/php/php-src/pulls/2147/commits"},"statuses":{"href":"https://api.github.com/repos/php/php-src/statuses/f3db3a80b4e81bdc6b3a2ac33db4f143a18b2c87"}},"merged":false,"mergeable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"commits":1,"additions":1,"deletions":1,"changed_files":1}}
{"actor":{"display_login":"orlitzky"}}