To fix missing the "Alive" of Acct-Status-Type, just :
define('RADIUS_ALIVE', 3);Эти константы описывают типы атрибутов протокола RADIUS, которые передают в функции radius_put_addr(), radius_put_attr(), radius_put_int() и radius_put_string().
RADIUS_USER_NAME
     (int)
    Атрибут User-Name. Ожидается, что значение атрибута будет строкой (string), которая содержит имя аутентифицируемого пользователя, и которую устанавливают функцией radius_put_attr().
RADIUS_USER_PASSWORD
     (int)
    Атрибут User-Password. Ожидается, что значение атрибута будет строкой (string), которая содержит пароль пользователя, и которую устанавливают функцией radius_put_attr(). Это значение будет обфусцировано при передаче согласно » разделу 5.2 стандарта RFC 2865.
RADIUS_CHAP_PASSWORD
     (int)
    
      Атрибут Chap-Password. Ожидается, что значение атрибута будет строкой (string),
      первый байт которой содержит идентификатор CHAP пользователя, а следующие 16 байтов содержат
      MD5-хэш CHAP-идентификатора, пароль в виде открытого текста и значение запроса CHAP,
      объединенные вместе. Обратите внимание, что проверочное значение
      CHAP также должно быть отдельно послано в атрибуте
      RADIUS_CHAP_CHALLENGE.
     
Пример #1 Использование паролей CHAP
<?php
// Сначала создадим обработчик аутентификации и запрос
$radh = radius_auth_open();
radius_add_server($radh, $server, $port, $secret, 3, 3);
radius_create_request($radh, RADIUS_ACCESS_REQUEST);
// Теперь, предполагая, что переменная $password содержит открытый пароль:
// Создаём проверочное значение
$challenge = mt_rand();
// Задаём идентификатор CHAP
$ident = 1;
// Добавляем атрибут Chap-Password
$cp = hash('md5', pack('Ca*', $ident, $password.$challenge), true);
radius_put_attr($radh, RADIUS_CHAP_PASSWORD, pack('C', $ident).$cp);
// Добавляем атрибут Chap-Challenge
radius_put_attr($radh, RADIUS_CHAP_CHALLENGE, $challenge);
/* Теперь нужно добавить оставшиеся аттриубты
 * и вызывать функцию radius_send_request(). */
?>RADIUS_NAS_IP_ADDRESS
     (int)
    Атрибут NAS-IP-Address. Ожидается, что значение будет IP-адресом клиента RADIUS в виде целого числа. Атрибут устанавливается функцией radius_put_addr().
RADIUS_NAS_PORT
     (int)
    Атрибут NAS-Port. Ожидается, что значение будет физическим портом клиента RADIUS в виде целого числа. Атрибут устанавливается функцией radius_put_addr().
RADIUS_SERVICE_TYPE
     (int)
    Атрибут Service-Type. Значение атрибута указывает на тип сервиса, который запросил клиент, и ожидается, что значение будет целым числом, которое устанавливается функцией radius_put_addr().
Следующие константы представляют допустимые значения атрибута:
RADIUS_FRAMED_PROTOCOL
     (int)
    Атрибут Framed-Protocol. Ожидается, что значение атрибута будет целым числом (int), которое указывает тип кадра для доступа по пакетному протоколу, и которое устанавливается функцией radius_put_int(). Допустимые значения атрибута:
RADIUS_FRAMED_IP_ADDRESS
     (int)
    Атрибут Framed-IP-Address. Атрибут должен содержать адрес пользовательской сети в виде целого числа. Атрибут устанавливается функцией radius_put_addr() и извлекается функцией radius_cvt_addr().
RADIUS_FRAMED_IP_NETMASK
     (int)
    Атрибут Framed-IP-Netmask. Атрибут должен содержать маску пользовательской сети в виде целого числа. Атрибут устанавливается функцией radius_put_addr() и извлекается функцией radius_cvt_addr()
RADIUS_FRAMED_ROUTING
     (int)
    Атрибут Framed-Routing. Атрибут должен быть целым числом и содержать метод маршрутизации. Атрибут устанавливается функцией radius_put_addr().
Допустимые значения:
0: Без маршрутизации1: Посылка пакетов маршрутизации2: Ожидать пакеты маршрутизации3: Посылать и ожидатьRADIUS_FILTER_ID
     (int)
    Атрибут Filter-ID. Атрибут должен быть зависящей от реализации, человеко-читаемой строкой фильтров. Атрибут устанавливается функцией radius_put_addr().
RADIUS_FRAMED_MTU
     (int)
    Атрибут Framed-MTU. Ожидается, что значение атрибута будет целым числом (int), которое указыает максимальный размер полезного блока данных одного пакета, который протокол умеет передавать без фрагментации данных, или MTU. Атрибут устанавливается функцией radius_put_addr().
RADIUS_FRAMED_COMPRESSION
     (int)
    Атрибут Framed-Compression. Целое число, которое указывает протокол сжатия. Атрибут устанавливается функцией radius_put_addr() Допустимые значения:
RADIUS_COMP_NONE: Без сжатияRADIUS_COMP_VJ: Сжатие заголовков VJ TCP/IPRADIUS_COMP_IPXHDR: Сжатие заголовков IPXRADIUS_COMP_STAC_LZS:
        Сжатие Stac-LZS (добавлено в PECL radius 1.3.0b2)
       RADIUS_LOGIN_IP_HOST
     (int)
    Атрибут Login-IP-Host. Целое число, которое представляет IP-адрес, с которым соединяется пользователь. Атрибут устанавливается функцией radius_put_addr().
RADIUS_LOGIN_SERVICE
     (int)
    Атрибут Login-Service. Значение атрибута означает сервис, с которым пользователь соединяется на сервере аутентификации. Это значение можно преобразовать в целое число PHP функцией radius_cvt_int().
RADIUS_LOGIN_TCP_PORT
     (int)
    Атрибут Login-TCP-Port. Значение атрибута означает порт, с которым пользователь соединяется на сервере аутентификации. Это значение можно преобразовать в целое число PHP с помощью функции radius_cvt_int().
RADIUS_REPLY_MESSAGE
     (int)
    Атрибут Reply-Message. Значение атрибута содержит текст, который можно показать пользователю в ответ на запрос аутентификации.
RADIUS_CALLBACK_NUMBER
     (int)
    Атрибут Callback-Number. Атрибут содержит строку, которую можно использовать как функцию обратного вызова.
RADIUS_CALLBACK_ID
     (int)
    Атрибут Callback-Id. Строка, которая содержит имя вызываемого метода, специфичного для конкретной реализации.
RADIUS_FRAMED_ROUTE
     (int)
    Атрибут Framed-Route. Строка, которая содержит зависящий от реализации список маршрутов сконфигурированных для пользователя.
RADIUS_FRAMED_IPX_NETWORK
     (int)
    
      Атрибут Framed-IPX-Network. Целое число, которое определяет сеть IPX, настроенную
      для пользователя или 0xFFFFFFFE, что призывает клиента RADIUS
      выбрать сеть самостоятельно. Можно извлечь с помощью
      radius_cvt_int().
     
RADIUS_STATE
     (int)
    Атрибут State. Значение атрибута — строка (string), которая зависит от реализации, включённая в ответ сервера Access-Challenge, которую нужно включить в следующий запрос Access-Request, и которая устанавливается функцией radius_put_attr().
RADIUS_CLASS
     (int)
    Атрибут Class. Произвольная строка, включённая в сообщение Access-Accept, которую нужно отправить на сервер учётных данных в запросе Accounting-Request, и которая устанавливается функцией radius_put_attr().
RADIUS_VENDOR_SPECIFIC
     (int)
    Атрибут Vendor-Specific. Обычно значения атрибутов поставщика должны устанавливаться функциями radius_put_vendor_addr(), radius_put_vendor_attr(), radius_put_vendor_int() и radius_put_vendor_string(), а не напрямую.
Эта константа в основном полезна при интерпретации специфичных для поставщика атрибутов в ответах RADIUS-сервера; когда получен специфичный для поставщика атрибут, вызывают функцию radius_get_vendor_attr(), чтобы получить доступ к идентификатору поставщика, а также типу и значению атрибута.
RADIUS_SESSION_TIMEOUT
     (int)
    Время ожидания сессии.
RADIUS_IDLE_TIMEOUT
     (int)
    Время ожидания простоя.
RADIUS_TERMINATION_ACTION
     (int)
    Прекращение операции.
RADIUS_CALLED_STATION_ID
     (int)
    Идентификатор вызываемой станции.
RADIUS_CALLING_STATION_ID
     (int)
    Идентификатор вызывающей станции.
RADIUS_NAS_IDENTIFIER
     (int)
    NAS ID
RADIUS_PROXY_STATE
     (int)
    Состояние прокси.
RADIUS_LOGIN_LAT_SERVICE
     (int)
    Сервис входа в систему LAT.
RADIUS_LOGIN_LAT_NODE
     (int)
    Узел входа в систему LAT.
RADIUS_LOGIN_LAT_GROUP
     (int)
    Группа входа в систему LAT.
RADIUS_FRAMED_APPLETALK_LINK
     (int)
    Канал пакетной передачи данных для стека протоклов Appletalk.
RADIUS_FRAMED_APPLETALK_NETWORK
     (int)
    Сеть пакетной передачи данных для стека протоклов Appletalk.
RADIUS_FRAMED_APPLETALK_ZONE
     (int)
    Зона пакетной передачи данных для стека протоклов Appletalk.
RADIUS_CHAP_CHALLENGE
     (int)
    Проверочное значение.
RADIUS_NAS_PORT_TYPE
     (int)
    Тип порта NAS, одна из констант:
RADIUS_ASYNCRADIUS_SYNCRADIUS_ISDN_SYNCRADIUS_ISDN_ASYNC_V120RADIUS_ISDN_ASYNC_V110RADIUS_VIRTUALRADIUS_PIAFSRADIUS_HDLC_CLEAR_CHANNELRADIUS_X_25RADIUS_X_75RADIUS_G_3_FAXRADIUS_SDSLRADIUS_ADSL_CAPRADIUS_ADSL_DMTRADIUS_IDSLRADIUS_ETHERNETRADIUS_XDSLRADIUS_CABLERADIUS_WIRELESS_OTHERRADIUS_WIRELESS_IEEE_802_11RADIUS_PORT_LIMIT
     (int)
    Ограничение на порты.
RADIUS_LOGIN_LAT_PORT
     (int)
    Порт входа в систему LAT.
RADIUS_CONNECT_INFO
     (int)
    Информация о соединении.
RADIUS_ACCT_STATUS_TYPE
     (int)
     Статус системы управления учётными данными, одна из констант:
RADIUS_ACCT_DELAY_TIME
     (int)
    Время задержки системы управления учётными данными.
RADIUS_ACCT_INPUT_OCTETS
     (int)
    Входящие байты в систему управления учётными данными.
RADIUS_ACCT_OUTPUT_OCTETS
     (int)
    Исходящие байты из системы управления учётными данными.
RADIUS_ACCT_SESSION_ID
     (int)
    Идентификатор сессии системы управления учётными данными.
RADIUS_ACCT_AUTHENTIC
     (int)
    Тип системы управления учётными данными, одна из констант:
RADIUS_ACCT_SESSION_TIME
     (int)
    Время сессии в системе управления учётными данными.
RADIUS_ACCT_INPUT_PACKETS
     (int)
    Входящие пакеты в систему управления учётными данными.
RADIUS_ACCT_OUTPUT_PACKETS
     (int)
    Исходящие пакеты из системы управления учётными данными.
RADIUS_ACCT_TERMINATE_CAUSE
     (int)
    Аварийное завершение сеанса управления учётными данными:
RADIUS_TERM_USER_REQUESTRADIUS_TERM_LOST_CARRIERRADIUS_TERM_LOST_SERVICERADIUS_TERM_IDLE_TIMEOUTRADIUS_TERM_SESSION_TIMEOUTRADIUS_TERM_ADMIN_RESETRADIUS_TERM_ADMIN_REBOOTRADIUS_TERM_PORT_ERRORRADIUS_TERM_NAS_ERRORRADIUS_TERM_NAS_REQUESTRADIUS_TERM_NAS_REBOOTRADIUS_TERM_PORT_UNNEEDEDRADIUS_TERM_PORT_PREEMPTEDRADIUS_TERM_PORT_SUSPENDEDRADIUS_TERM_SERVICE_UNAVAILABLERADIUS_TERM_CALLBACKRADIUS_TERM_USER_ERRORRADIUS_TERM_HOST_REQUESTRADIUS_ACCT_MULTI_SESSION_ID
     (int)
    Многосессионный идентификатор системы управления учётными данными.
RADIUS_ACCT_LINK_COUNT
     (int)
    Количество соединений системы управления учётными данными.
RADIUS_LOGIN
    RADIUS_FRAMED
    RADIUS_CALLBACK_LOGIN
    RADIUS_CALLBACK_FRAMED
    RADIUS_OUTBOUND
    RADIUS_ADMINISTRATIVE
    RADIUS_NAS_PROMPT
    RADIUS_AUTHENTICATE_ONLY
    RADIUS_CALLBACK_NAS_PROMPT
    RADIUS_PPP
    RADIUS_SLIP
    RADIUS_ARAP
    RADIUS_GANDALF
    RADIUS_XYLOGICS
    RADIUS_COMP_NONE
    RADIUS_COMP_VJ
    RADIUS_COMP_IPXHDR
    RADIUS_COMP_STAC_LZS
    RADIUS_ASYNC
    RADIUS_SYNC
    RADIUS_ISDN_SYNC
    RADIUS_ISDN_ASYNC_V120
    RADIUS_ISDN_ASYNC_V110
    RADIUS_VIRTUAL
    RADIUS_PIAFS
    RADIUS_HDLC_CLEAR_CHANNEL
    RADIUS_X_25
    RADIUS_X_75
    RADIUS_G_3_FAX
    RADIUS_SDSL
    RADIUS_ADSL_CAP
    RADIUS_ADSL_DMT
    RADIUS_IDSL
    RADIUS_ETHERNET
    RADIUS_XDSL
    RADIUS_CABLE
    RADIUS_WIRELESS_OTHER
    RADIUS_WIRELESS_IEEE_802_11
    RADIUS_START
    RADIUS_STOP
    RADIUS_ACCOUNTING_ON
    RADIUS_ACCOUNTING_OFF
    RADIUS_AUTH_RADIUS
    RADIUS_AUTH_LOCAL
    RADIUS_AUTH_REMOTE
    RADIUS_TERM_USER_REQUEST
    RADIUS_TERM_LOST_CARRIER
    RADIUS_TERM_LOST_SERVICE
    RADIUS_TERM_IDLE_TIMEOUT
    RADIUS_TERM_SESSION_TIMEOUT
    RADIUS_TERM_ADMIN_RESET
    RADIUS_TERM_ADMIN_REBOOT
    RADIUS_TERM_PORT_ERROR
    RADIUS_TERM_NAS_ERROR
    RADIUS_TERM_NAS_REQUEST
    RADIUS_TERM_NAS_REBOOT
    RADIUS_TERM_PORT_UNNEEDED
    RADIUS_TERM_PORT_PREEMPTED
    RADIUS_TERM_PORT_SUSPENDED
    RADIUS_TERM_CALLBACK
    RADIUS_TERM_USER_ERROR
    RADIUS_TERM_HOST_REQUEST
    