ru.bitel.bgbilling.kernel.network.radius

## Class RadiusUtils

- java.lang.Object
- - ru.bitel.bgbilling.kernel.network.radius.RadiusUtils

-     public class RadiusUtils
      extends java.lang.Object

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `RadiusUtils.RadiusPacketAdapter`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static boolean` | `logEnable`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RadiusUtils()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static void` | `addToLog(DefaultServerSetup setup, int mid, RadiusPacket packet, java.util.Date logMonthDate, int recordId)`
    `static boolean` | `checkChapPassword(RadiusAttributeSet packet, byte[] authenticator, java.lang.String openPassword)`
    `static boolean` | `checkDigestMD5Password(RadiusAttributeSet packet, java.lang.String openPassw)`
    `static boolean` | `checkDigestPassword(RadiusAttributeSet packet, RadiusAttributeSet response, java.lang.String openPassw)`
    `static int` | `checkMessageAuthenticator(RadiusPacket packet, java.nio.ByteBuffer bb, byte[] secret)`
    `static boolean` | `checkPassword(ru.bitel.bgbilling.kernel.network.radius.nas.Nas<?,?,?> nas, java.lang.String openPassw, RadiusAttributeSet packet, RadiusAttributeSet response, byte[] secret, byte[] authenticator)`
    `static void` | `decryptPassword(RadiusPacket request, byte[] secret)`
    `static byte[]` | `encodeChapPassword(java.lang.String userPassword, byte[] chapChallenge)`
    `static byte[]` | `encodePapPassword(byte[] userPassword, byte[] secret, byte[] authenticator)`
    `static byte[]` | `getHmacMD5(byte[] key, java.nio.ByteBuffer data)`
    `static int` | `getNasPort(RadiusPacket request)`
    `static int` | `insertToLog(DefaultServerSetup setup, int mid, RadiusPacket packet, java.util.Date logMonthDate)`
    `static byte[]` | `next()` 16
    `static byte[]` | `next(int num)`
    `static void` | `setChapPassword(RadiusPacket packet, java.lang.String userPassword)`
    `static void` | `setPapPassword(RadiusPacket packet, byte[] secret, java.lang.String userPassword)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### logEnable

          public static volatile boolean logEnable

  - ### Constructor Detail

    - #### RadiusUtils

          public RadiusUtils()

  - ### Method Detail

    - #### checkMessageAuthenticator

          public static int checkMessageAuthenticator(RadiusPacket packet,
                                                      java.nio.ByteBuffer bb,
                                                      byte[] secret)
                                               throws java.security.InvalidKeyException,
                                                      java.security.NoSuchAlgorithmException

      Throws:
        `java.security.InvalidKeyException`
        `java.security.NoSuchAlgorithmException`

    - #### getHmacMD5

          public static byte[] getHmacMD5(byte[] key,
                                          java.nio.ByteBuffer data)
                                   throws java.security.NoSuchAlgorithmException,
                                          java.security.InvalidKeyException

      Throws:
        `java.security.NoSuchAlgorithmException`
        `java.security.InvalidKeyException`

    - #### next

          public static byte[] next()

      16

    - #### next

          public static byte[] next(int num)

    - #### encodeChapPassword

          public static byte[] encodeChapPassword(java.lang.String userPassword,
                                                  byte[] chapChallenge)
                                           throws java.security.NoSuchAlgorithmException,
                                                  java.io.UnsupportedEncodingException

      Throws:
        `java.security.NoSuchAlgorithmException`
        `java.io.UnsupportedEncodingException`

    - #### encodePapPassword

          public static byte[] encodePapPassword(byte[] userPassword,
                                                 byte[] secret,
                                                 byte[] authenticator)
                                          throws java.security.NoSuchAlgorithmException

      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### setChapPassword

          public static void setChapPassword(RadiusPacket packet,
                                             java.lang.String userPassword)
                                      throws java.security.NoSuchAlgorithmException,
                                             java.io.UnsupportedEncodingException

      Throws:
        `java.security.NoSuchAlgorithmException`
        `java.io.UnsupportedEncodingException`

    - #### setPapPassword

          public static void setPapPassword(RadiusPacket packet,
                                            byte[] secret,
                                            java.lang.String userPassword)
                                     throws java.security.NoSuchAlgorithmException,
                                            java.io.UnsupportedEncodingException

      Throws:
        `java.security.NoSuchAlgorithmException`
        `java.io.UnsupportedEncodingException`

    - #### decryptPassword

          public static void decryptPassword(RadiusPacket request,
                                             byte[] secret)

    - #### checkChapPassword

          public static boolean checkChapPassword(RadiusAttributeSet packet,
                                                  byte[] authenticator,
                                                  java.lang.String openPassword)

    - #### checkDigestMD5Password

          public static boolean checkDigestMD5Password(RadiusAttributeSet packet,
                                                       java.lang.String openPassw)

    - #### checkDigestPassword

          public static boolean checkDigestPassword(RadiusAttributeSet packet,
                                                    RadiusAttributeSet response,
                                                    java.lang.String openPassw)

    - #### checkPassword

          public static boolean checkPassword(ru.bitel.bgbilling.kernel.network.radius.nas.Nas<?,?,?> nas,
                                              java.lang.String openPassw,
                                              RadiusAttributeSet packet,
                                              RadiusAttributeSet response,
                                              byte[] secret,
                                              byte[] authenticator)

    - #### insertToLog

          public static int insertToLog(DefaultServerSetup setup,
                                        int mid,
                                        RadiusPacket packet,
                                        java.util.Date logMonthDate)

    - #### addToLog

          public static void addToLog(DefaultServerSetup setup,
                                      int mid,
                                      RadiusPacket packet,
                                      java.util.Date logMonthDate,
                                      int recordId)

    - #### getNasPort

          public static int getNasPort(RadiusPacket request)