summaryrefslogtreecommitdiff
path: root/php
Commit message (Collapse)AuthorAge
* Add SPDX-License-IdentifierRuss Allbery2018-04-29
| | | | | | Add SPDX-License-Identifier headers to all substantial source files. Also canonicalize copyright date formats and fix a few copyright notices that weren't in my standard layout.
* Add a check-cppcheck target and fix what it foundRuss Allbery2018-04-01
| | | | | Add maintainer check-cppcheck target to run cppcheck across the source base with a standard configuration. Fix all issues found by cppcheck.
* Port PHP extension to PHP 7Russ Allbery2016-04-25
| | | | | | | | | | | The PHP bindings have been ported to PHP 7, based on work by Nish Aravamudan. The PHP 7 API is sufficiently different that this was done by forking the PHP code and creating a new version for PHP 7 and later, chosing which extension to compile based on the discovered version of PHP. Currently, there is no functionality difference, but the PHP 5 extension should be considered frozen and may not get any new features. It will eventually be removed in a future version of remctl when PHP 7 is sufficiently widespread.
* Use calloc and reallocarray and add malloc overflow checksRuss Allbery2014-06-15
| | | | | | | | | | | | | | | Use calloc in preference to calculating a malloc size with multiplication everywhere, and reallocarray in preference to calculating a realloc size. In most places this caution was probably not necessary, but uniformity is easier to audit and no one will ever notice the speed difference between malloc and calloc. Add explicit overflow checks before every remaining malloc call with a calculated size. Change-Id: Ifc8e577b32d45751b9d64955aa1cace8a5dedde0 Reviewed-on: https://gerrit.stanford.edu/1491 Reviewed-by: Russ Allbery <rra@stanford.edu> Tested-by: Russ Allbery <rra@stanford.edu>
* Change my email address to eagle@eyrie.orgRuss Allbery2014-01-05
| | | | | | | Change-Id: Iba0376ea03a749d81abc2eeb49b0b5cf7d3e8847 Reviewed-on: https://gerrit.stanford.edu/1353 Reviewed-by: Russ Allbery <rra@stanford.edu> Tested-by: Russ Allbery <rra@stanford.edu>
* Use gss_krb5_import_cred for remctl_set_ccacheRuss Allbery2013-05-16
| | | | | | | | | | | | | | | | If a Kerberos library and gss_krb5_import_cred are available at build time, libremctl now uses them to implement remctl_set_ccache to avoid affecting global program GSS-API state. If those requirements are met, remctl_set_ccache will only affect the remctl context on which it's called. This also requires importing the Kerberos portability layer, so make sure that it's usable for the TAP Kerberos add-on. Change-Id: I561812d0e36df6adf52d974dd5390953940865c5 Reviewed-on: https://gerrit.stanford.edu/1198 Reviewed-by: Russ Allbery <rra@stanford.edu> Tested-by: Russ Allbery <rra@stanford.edu>
* RPM spec file updates to build all language bindingsDarren Patterson2013-05-16
| | | | | | | | | | | Update the remctl spec file to support building all language bindings, split Python, PHP, Ruby, and Perl into separate packages, and improve various details about the build process and compatibility. Change-Id: I694cf7222ca78f1dfbc86e48c861665a6c339025 Reviewed-on: https://gerrit.stanford.edu/1084 Tested-by: Russ Allbery <rra@stanford.edu> Reviewed-by: Russ Allbery <rra@stanford.edu>
* Also fix set_ccache and set_source_ip docs for other bindingsRuss Allbery2012-07-18
| | | | | | | Make the same fix for other bindings as for Python: be clear that set_ccache and set_source_ip are optional calls. Change-Id: I1bc1e81da9af4eba52e64723e9bc5a1c20b0e154
* Add missing copyright and license statements to many filesRuss Allbery2012-06-19
| | | | | | | | Also change the license on the POD documentation from Expat to the all-permissive license and switch the license on several remctl source files from the MIT license to the Expat license. Change-Id: Ie7ebedf3b56cc2c19211217282519a7e6200c9e2
* Add remctl_set_timeout to the correct PHP headerRuss Allbery2012-02-23
| | | | | | | The previous modification incorrectly added it to the non-*.in version, so it wasn't committed. Change-Id: If54d54141b6499c3df7657f9f3a86d11e02b558e
* Add timeout support in PHP bindings, remove remctl_output warningRuss Allbery2012-02-22
| | | | | | | | | The PHP bindings no longer output a PHP warning if remctl_output fails. This was inconsistent with the other API calls (remctl_open and remctl_command can also fail but didn't result in warnings), may be expected and handled by the caller, and made testing difficult. Change-Id: I70c489a9c5e4debd2211e015af9144befe27b58f
* Update test suite for new test configuration, tmp directoryRuss Allbery2012-02-09
| | | | | | | | | Update the TAP support library to use config/principal and config/keytab rather than files under data. Update most of the tests to also use config/tmp to handle temporary files for running tests. Change-Id: I014cdf5e15e1d1bbeabfaa7feb60e1b97bb29c2b
* Add NOOP support to the language bindingsRuss Allbery2011-10-31
|
* Documentation updates for set_ccacheRuss Allbery2011-09-26
| | | | | | | Add documentation to the PHP and Python README files, and document in the Perl Net::Remctl POD documentation that not all GSS-API implementations support this. Also note the return value from the set_* functions in more places.
* Add remctl_set_ccache interface to the PHP bindingsRuss Allbery2011-09-26
|
* Fix more issues with overriding user tokens when testingRuss Allbery2011-09-21
| | | | | We need to try kinit --no-afslog first in all of our test suites, not just the kinit.c C TAP add-on.
* Update copyright datesRuss Allbery2011-09-21
|
* Add PHP bindings for remctl_set_source_ipRuss Allbery2011-09-21
|
* Change the Stanford copyright statement to use the official formRuss Allbery2011-05-31
|
* Pass LD_LIBRARY_PATH into PHP testsRuss Allbery2010-02-25
| | | | | | The new lack of passing of environment variables also clobbered LD_LIBRARY_PATH. Use the --ENV-- section for each test for that as well.
* Fix environment for PHP testsRuss Allbery2010-02-25
| | | | | | PHP 5.3 apparently no longer passes environment variables through the test driver, so the test cases need to explicitly set the KRB5CCNAME variable to the cache created by the test suite driver.
* Python and PHP testing outside of source tree fixesRuss Allbery2009-05-22
|
* Use command and subcommand for components of a remctl commandRuss Allbery2009-02-18
| | | | | | | | Use command and subcommand as the names for the first two parameters to the remctl client and the first two strings in a remctl command instead of the unintuitive "type" and "service" terminology borrowed from sysctl. This only changes documentation and some internal variable names; no external APIs should be affected.
* PHP: fix skipping testsRuss Allbery2008-09-12
| | | | | | | Don't skip tests just because the module isn't loaded; if the module isn't loaded, something has gone horribly wrong. That also removes the syntax error in that part of the skip code which was preventing the skip code from checking whether remctld was running.
* PHP: actually test loading the moduleRuss Allbery2008-09-12
| | | | | The module load test wasn't actually testing whether the module was loaded.
* PHP: make the test wrapper quieter with no KerberosRuss Allbery2008-09-12
| | | | | | When there was no Kerberos configuration, the test wrapper was removing files that were never created. Do that with rm -f to avoid the spurious error messages.
* Switch to configuring PHP at build timeRuss Allbery2008-09-12
| | | | | | | | Handling the PHP directory as an Autoconf subdirectory just doesn't work with srcdir != builddir builds. The ordering is all wrong. Switch to running configure at build time, which also has the nice advantage that we can generate config.m4 with Autoconf and substitute in the correct link paths.
* Get PHP extension version from the main package versionRuss Allbery2008-09-12
| | | | | Also be sure to create the php directory in the configure script before trying to copy files into it.
* Remove some stray whitespace in php_remctl.cRuss Allbery2008-09-12
|
* Run phpize during configure, update documentationRuss Allbery2008-09-10
| | | | | | | | | | | | | | Don't run phpize from autogen, since the build system that it installs may vary based on one's local PHP installation. Instead, run it during configure. This means that we don't have to ship a copy of the GPL and can remove a lot of files from LICENSE. Update the prerequisites for the PHP bindings and document them for the Python bindings as well. Update README for all of the bindings, to point to the protocol documentation, to mention that the design document is the original design and is out of date, and to be clearer about prerequisites.
* PHP: fix include and library search pathsRuss Allbery2008-08-27
| | | | | | Use the right variable for the include search path and also change the library search path so that we link against the just-built client library instead of whatever is installed on the system.
* PHP: redo how credit is handled slightlyRuss Allbery2008-08-25
| | | | | | Add a HISTORY section to the documentation and change Andrew's attribution to say "originally written by". This makes the handling similar to what is done for the Python bindings.
* PHP: remctl_open, not remctl_connect, in documentationRuss Allbery2008-08-21
|
* php/test.php has been supplanted by the READMERuss Allbery2008-08-08
|
* Add documentation for the remctl PECL extension for PHPRuss Allbery2008-08-08
|
* Use proper wording for the remctl PECL extension for PHPRuss Allbery2008-08-08
| | | | | | The PHP license requires that one not call one's extension "PHP foo" and instead call it "foo for PHP." I very much doubt anyone is going to care, but be fully correct anyway.
* Add license information for the PHP extensionRuss Allbery2008-08-08
|
* Minor PHP test cleanupRuss Allbery2008-08-07
| | | | | | Fix the SKIPIF section syntax (looks like it may not have been running). Add an explicit remctl_close to the advanced API test to make sure it doesn't cause a crash. Change the advanced test description.
* Force use of the newly built libremctl library in testsRuss Allbery2008-08-07
|
* The PHP extension should not need another copy of remctl.hRuss Allbery2008-08-07
|
* Add a test case for the PHP advanced interfaceRuss Allbery2008-08-07
|
* Add test for the simplified PHP interfaceRuss Allbery2008-08-07
|
* Add some additional setup needed for testsRuss Allbery2008-08-07
|
* Use the correct data type when parsing numeric argumentsRuss Allbery2008-08-07
|
* Integrate PHP testing into the build systemRuss Allbery2008-08-07
| | | | | | | Add a wrapper around the PHP make test that works around the Debian module configuration problem by linking all the system modules into the modules directory. The wrapper also gets a Kerberos ticket and spawns a remctl server for the use of the tests.
* Fix coding style and API in the PHP PECL moduleRuss Allbery2008-08-07
| | | | | | | | | | | | | Clean up the coding style for the PHP PECL module to match the rest of the project and add copyright headers and license pointers. Change the extended API exposed by the PECL module to match the API exposed by other extensions. This means always providing a data key with the data, not turning it into stdout and stderr similar to the simple API, and not adding a done key. This can be reconsidered later if there's a very native-PHP way of expressing things, but these differences seemed unnecessary and not specifically driven by being more PHP-native.
* Initial commit of PHP bindingsRuss Allbery2008-08-07
Initial PHP bindings from Andrew Mortensen. They compile, but the test suite is incomplete, they're not tied into the rest of the build system, and they need coding style cleanups and more test suite work.