1--TEST-- 2radius_put_string() with tag 3--INI-- 4display_errors=1 5error_reporting=22527 6--SKIPIF-- 7<?php 8include dirname(__FILE__).'/server/fake_server.php'; 9 10if (\RADIUS\FakeServer\FakeServer::skip()) { 11 die('SKIP: pcntl, radius and sockets extensions required'); 12} 13?> 14--FILE-- 15<?php 16include dirname(__FILE__).'/server/fake_server.php'; 17 18$server = new \RADIUS\FakeServer\FakeServer; 19$res = $server->getAuthResource(); 20 21$request = \RADIUS\FakeServer\Request::expect(RADIUS_ACCESS_REQUEST, array( 22 \RADIUS\FakeServer\Attribute\expect(RADIUS_USER_NAME, 'foo', 10), 23 \RADIUS\FakeServer\Attribute\expect(RADIUS_LOGIN_IP_HOST, 'abcdefghijklmnopqrstuvwxyz', 10, true), 24)); 25 26$response = new \RADIUS\FakeServer\RadiusResponse; 27$response->code = RADIUS_ACCESS_REJECT; 28$response->attributes = array( 29 \RADIUS\FakeServer\Attribute\expect(RADIUS_REPLY_MESSAGE, 'Go away'), 30); 31 32$server->addTransaction($request, $response); 33$server->handle(); 34 35var_dump(radius_put_string($res, RADIUS_USER_NAME, 'foo', RADIUS_OPTION_TAGGED, -1)); 36var_dump(radius_put_string($res, RADIUS_USER_NAME, 'foo', RADIUS_OPTION_TAGGED, 256)); 37var_dump(radius_put_string($res, RADIUS_USER_NAME, 'foo', RADIUS_OPTION_TAGGED, 10)); 38var_dump(radius_put_string($res, RADIUS_LOGIN_IP_HOST, 'abcdefghijklmnopqrstuvwxyz', RADIUS_OPTION_SALT | RADIUS_OPTION_TAGGED, 10)); 39 40radius_create_request($res, RADIUS_ACCESS_REQUEST); 41var_dump(radius_put_string($res, RADIUS_USER_NAME, 'foo', RADIUS_OPTION_TAGGED, 10)); 42var_dump(radius_put_string($res, RADIUS_LOGIN_IP_HOST, 'abcdefghijklmnopqrstuvwxyz', RADIUS_OPTION_SALT | RADIUS_OPTION_TAGGED, 10)); 43radius_put_string($res, RADIUS_USER_PASSWORD, 'bar'); 44radius_send_request($res); 45 46var_dump($server->wait()); 47?> 48--EXPECTF-- 49Notice: Tag must be between 0 and 255 in %s on line %d 50bool(false) 51 52Notice: Tag must be between 0 and 255 in %s on line %d 53bool(false) 54bool(false) 55bool(false) 56bool(true) 57bool(true) 58int(0) 59