1# The snmp extension tests 2 3To enable these tests, you must have: 4 5* PHP compiled with SNMP `--with-snmp` 6* An SNMP server running. 7 8## How to test 9 10You need to give credentials with environment vars if default ones are not 11suitable (see `snmp_include.inc` for more info): 12 13```txt 14SNMP_HOSTNAME : IPv4 of remote SNMP agent 15SNMP_HOSTNAME : IPv6 or remote SNMP agent 16SNMP_PORT : SNMP port for queries 17SNMP_COMMUNITY : community name 18SNMP_COMMUNITY_WRITE : community used for write tests (snmpset()). 19SNMP_MIBDIR : Directory containing MIBS 20``` 21 22To run test suite you may use this command (presuming that you pwd is where this 23README file is located): 24 25```bash 26make -C ../../.. test TESTS="`cd ../../..; /bin/ls -1 ext/snmp/tests/*.phpt | xargs echo`" 27``` 28 29Running `run-tests.php` directly will clear your environment and therefore tests 30will fail if your SNMP configuration does not fit into default values specified 31in `snmp_include.inc`. 32 33## Configuring the SNMPD server 34 35### On Linux/FreeBSD 36 37* Install package `net-snmpd` (name may differ based on your distribution). 38* Replace config file (by default this is `/etc/snmp/snmpd.conf` on Linux and 39 `/usr/local/etc/snmp/snmpd.conf` on FreeBSD) with `snmpd.conf` supplied. 40 41Before launching daemon make sure that there is no file 42`/var/net-snmp/snmpd.conf`. Delete it if exists. Forgetting to do so will fail 43SNMPv3 tests. 44 45* Place `ext/snmp/tests/bigtest` near `snmpd.conf`, tune path to it in 46 `snmpd.conf`. 47* Launch snmpd (service snmpd start or /etc/init.d/snmpd start). Alternatively 48 you can start snmpd daemon using following command line: 49 50 ```bash 51 sudo snmpd -C -c ./snmpd.conf -f -Le 52 ``` 53