packages feed

radius 0.5.0.2 → 0.6.0.0

raw patch · 3 files changed

+145/−32 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Network.RADIUS.Types: UnknownARAPZoneAccess :: Int -> ARAPZoneAccess
+ Network.RADIUS.Types: UnknownAttribute :: Word8 -> ByteString -> PacketAttribute
+ Network.RADIUS.Types: UnknownFramedCompression :: Int -> FramedCompression
+ Network.RADIUS.Types: UnknownFramedProtocol :: Int -> FramedProtocol
+ Network.RADIUS.Types: UnknownFramedRouting :: Int -> FramedRouting
+ Network.RADIUS.Types: UnknownLoginService :: Int -> LoginService
+ Network.RADIUS.Types: UnknownNASPortType :: Int -> NASPortType
+ Network.RADIUS.Types: UnknownPacketType :: Int -> PacketType
+ Network.RADIUS.Types: UnknownServiceType :: Int -> ServiceType
+ Network.RADIUS.Types: UnknownTerminationAction :: Int -> TerminationAction
+ Network.RADIUS.Types: [getUnknownAttribute] :: PacketAttribute -> ByteString
+ Network.RADIUS.Types: [getUnknownType] :: PacketAttribute -> Word8
- Network.RADIUS.Encoding: getAttributeValue :: (Binary a) => Get a
+ Network.RADIUS.Encoding: getAttributeValue :: Binary a => Get a
- Network.RADIUS.Encoding: getEnum :: (Enum a) => Get a
+ Network.RADIUS.Encoding: getEnum :: Enum a => Get a
- Network.RADIUS.Encoding: putAttribute :: (Binary a) => Word8 -> a -> Put
+ Network.RADIUS.Encoding: putAttribute :: Binary a => Word8 -> a -> Put
- Network.RADIUS.Encoding: putEnum :: (Enum a) => a -> Put
+ Network.RADIUS.Encoding: putEnum :: Enum a => a -> Put

Files

radius.cabal view
@@ -1,13 +1,13 @@ name:                radius-version:             0.5.0.2+version:             0.6.0.0 synopsis:            Remote Authentication Dial In User Service (RADIUS) description:         This module provides types and on the wire de/coding of RADIUS packets as per RFC2865-homepage:            https://gitlab.com/codemonkeylabs/radius#readme+homepage:            https://github.com/erickg/radius#readme license:             BSD3 license-file:        LICENSE author:              Erick Gonzalez maintainer:          erick@codemonkeylabs.de-copyright:           2018 Erick Gonzalez+copyright:           2017 Erick Gonzalez category:            Network build-type:          Simple extra-source-files:  README.md@@ -29,4 +29,4 @@  source-repository head   type:     git-  location: https://gitlab.com/codemonkeylabs/radius+  location: https://github.com/erickg/radius
src/Network/RADIUS/Encoding.hs view
@@ -197,6 +197,7 @@       putWord8 attrLen       putWord8 identity       putLazyByteString str+    put (UnknownAttribute attributeType value) = putAttribute attributeType value      get = do       code <- getWord8@@ -300,7 +301,7 @@   identity <- getWord8   attrData <- getLazyByteString 16 -- CHAP response is always 16 octets   return $ CHAPPassword identity attrData-getAttribute n  = fail $ "Unknown RADIUS attribute type " ++ show n+getAttribute n  = getAttributeStr >>= return . UnknownAttribute n  -- | For internal use. getAttributeStr :: Get ByteString
src/Network/RADIUS/Types.hs view
@@ -41,18 +41,19 @@                 | AccessChallenge                 | StatusServer                 | StatusClient+                | UnknownPacketType Int                   deriving (Show, Eq) - instance Enum PacketType where-    fromEnum AccessRequest      = 1-    fromEnum AccessAccept       = 2-    fromEnum AccessReject       = 3-    fromEnum AccountingRequest  = 4-    fromEnum AccountingResponse = 5-    fromEnum AccessChallenge    = 11-    fromEnum StatusServer       = 12-    fromEnum StatusClient       = 13+    fromEnum AccessRequest         = 1+    fromEnum AccessAccept          = 2+    fromEnum AccessReject          = 3+    fromEnum AccountingRequest     = 4+    fromEnum AccountingResponse    = 5+    fromEnum AccessChallenge       = 11+    fromEnum StatusServer          = 12+    fromEnum StatusClient          = 13+    fromEnum (UnknownPacketType x) = x     toEnum 1  = AccessRequest     toEnum 2  = AccessAccept     toEnum 3  = AccessReject@@ -61,7 +62,7 @@     toEnum 11 = AccessChallenge     toEnum 12 = StatusServer     toEnum 13 = StatusClient-    toEnum x  = error $ "Invalid RADIUS packet type " ++ show x+    toEnum x  = UnknownPacketType x  data PacketAttribute =     UserNameAttribute               { getUserNameAttribute               :: ByteString        }@@ -132,9 +133,10 @@   | AcctInterimIntervalAttribute    { getAcctInterimIntervalAttribute    :: Word32            }   | NASPortIdAttribute              { getNASPortIdAttribute              :: ByteString        }   | FramedPoolAttribute             { getFramedPoolAttribute             :: ByteString        }+  | UnknownAttribute                { getUnknownType                     :: Word8,+                                      getUnknownAttribute                :: ByteString        }   deriving (Show, Eq, Data) - data ServiceType = LoginService                  | FramedService                  | CallbackLoginService@@ -146,6 +148,7 @@                  | CallbackNASPrompt                  | CallCheckService                  | CallbackAdministrativeService+                 | UnknownServiceType Int                    deriving (Show, Eq, Data)  instance Enum ServiceType where@@ -160,6 +163,7 @@     fromEnum CallbackNASPrompt             = 9     fromEnum CallCheckService              = 10     fromEnum CallbackAdministrativeService = 11+    fromEnum (UnknownServiceType x)        = x     toEnum 1  = LoginService     toEnum 2  = FramedService     toEnum 3  = CallbackLoginService@@ -171,7 +175,7 @@     toEnum 9  = CallbackNASPrompt     toEnum 10 = CallCheckService     toEnum 11 = CallbackAdministrativeService-    toEnum x  = error $ "Invalid RADIUS service type " ++ show x+    toEnum x  = UnknownServiceType x  data FramedProtocol = PPPFramedProtocol                     | SLIPFramedProtocol@@ -179,35 +183,63 @@                     | GandalfFramedProtocol                     | XylogicsFramedProtocol                     | X75FramedProtocol+                    | UnknownFramedProtocol Int                       deriving (Show, Eq, Data)  instance Enum FramedProtocol where-    fromEnum PPPFramedProtocol      = 1-    fromEnum SLIPFramedProtocol     = 2-    fromEnum ARAPFramedProtocol     = 3-    fromEnum GandalfFramedProtocol  = 4-    fromEnum XylogicsFramedProtocol = 5-    fromEnum X75FramedProtocol      = 6+    fromEnum PPPFramedProtocol         = 1+    fromEnum SLIPFramedProtocol        = 2+    fromEnum ARAPFramedProtocol        = 3+    fromEnum GandalfFramedProtocol     = 4+    fromEnum XylogicsFramedProtocol    = 5+    fromEnum X75FramedProtocol         = 6+    fromEnum (UnknownFramedProtocol x) = x     toEnum 1 = PPPFramedProtocol     toEnum 2 = SLIPFramedProtocol     toEnum 3 = ARAPFramedProtocol     toEnum 4 = GandalfFramedProtocol     toEnum 5 = XylogicsFramedProtocol     toEnum 6 = X75FramedProtocol-    toEnum x = error $ "Invalid framed protocol " ++ show x+    toEnum x = UnknownFramedProtocol x  data FramedRouting = NoneFramedRouting                    | SendFramedRouting                    | ListenFramedRouting                    | SendAndListenFramedRouting-                     deriving (Show, Eq, Enum, Data)+                   | UnknownFramedRouting Int+                     deriving (Show, Eq, Data) +instance Enum FramedRouting where+  fromEnum NoneFramedRouting          = 1+  fromEnum SendFramedRouting          = 2+  fromEnum ListenFramedRouting        = 3+  fromEnum SendAndListenFramedRouting = 4+  fromEnum (UnknownFramedRouting x)   = x+  toEnum 1 = NoneFramedRouting+  toEnum 2 = SendFramedRouting+  toEnum 3 = ListenFramedRouting+  toEnum 4 = SendAndListenFramedRouting+  toEnum x = UnknownFramedRouting x+ data FramedCompression = NoCompression                        | VJTCPIPHeaderCompression                        | IPXHeaderCompression                        | StacLZSCompression-                         deriving (Show, Eq, Enum, Data)+                       | UnknownFramedCompression Int+                         deriving (Show, Eq, Data) +instance Enum FramedCompression where+  fromEnum NoCompression                = 1+  fromEnum VJTCPIPHeaderCompression     = 2+  fromEnum IPXHeaderCompression         = 3+  fromEnum StacLZSCompression           = 4+  fromEnum (UnknownFramedCompression x) = x+  toEnum 1 = NoCompression+  toEnum 2 = VJTCPIPHeaderCompression+  toEnum 3 = IPXHeaderCompression+  toEnum 4 = StacLZSCompression+  toEnum x = UnknownFramedCompression x+ data LoginService = TelnetService                   | RloginService                   | TCPClearService@@ -217,11 +249,44 @@                   | X25T3POSService                   | UnusedService                   | TCPClearQuietService-                    deriving (Show, Eq, Enum, Data)+                  | UnknownLoginService Int+                    deriving (Show, Eq, Data) -data TerminationAction = DefaultTerminationAction | RADIUSRequestTerminationAction-                       deriving (Show, Eq, Enum, Data)+instance Enum LoginService where+  fromEnum TelnetService           = 1+  fromEnum RloginService           = 2+  fromEnum TCPClearService         = 3+  fromEnum PortMasterService       = 4+  fromEnum LATService              = 5+  fromEnum X25PADService           = 6+  fromEnum X25T3POSService         = 7+  fromEnum UnusedService           = 8+  fromEnum TCPClearQuietService    = 9+  fromEnum (UnknownLoginService x) = x+  toEnum 1 = TelnetService+  toEnum 2 = RloginService+  toEnum 3 = TCPClearService+  toEnum 4 = PortMasterService+  toEnum 5 = LATService+  toEnum 6 = X25PADService+  toEnum 7 = X25T3POSService+  toEnum 8 = UnusedService+  toEnum 9 = TCPClearQuietService+  toEnum x = UnknownLoginService x +data TerminationAction = DefaultTerminationAction+                       | RADIUSRequestTerminationAction+                       | UnknownTerminationAction Int+                       deriving (Show, Eq, Data)++instance Enum TerminationAction where+  fromEnum DefaultTerminationAction       = 1+  fromEnum RADIUSRequestTerminationAction = 2+  fromEnum (UnknownTerminationAction x)   = x+  toEnum 1 = DefaultTerminationAction+  toEnum 2 = RADIUSRequestTerminationAction+  toEnum x = UnknownTerminationAction x+ data NASPortType = AsyncNASPort                  | SyncNASPort                  | ISDNSyncPort@@ -242,18 +307,65 @@                  | CableNASPort                  | WirelessOtherNASPort                  | WirelessIEEE80211NASPort-                   deriving (Show, Eq, Enum, Data)+                 | UnknownNASPortType Int+                   deriving (Show, Eq, Data) +instance Enum NASPortType where+  fromEnum AsyncNASPort             = 1+  fromEnum SyncNASPort              = 2+  fromEnum ISDNSyncPort             = 3+  fromEnum ISDNAsyncV120Port        = 4+  fromEnum ISDNAsyncV110Port        = 5+  fromEnum VirtualNASPort           = 6+  fromEnum PIAFSNASPort             = 7+  fromEnum HDLCClearChannelNASPort  = 8+  fromEnum X25NASPort               = 9+  fromEnum X75NASPort               = 10+  fromEnum G3FaxNASPort             = 11+  fromEnum SDSLNASPort              = 12+  fromEnum ADSLCAPNASPort           = 13+  fromEnum ADSLDMTNASPort           = 14+  fromEnum IDSLNASPort              = 15+  fromEnum EthernetNASPort          = 16+  fromEnum XDSLNASPort              = 17+  fromEnum CableNASPort             = 18+  fromEnum WirelessOtherNASPort     = 19+  fromEnum WirelessIEEE80211NASPort = 20+  fromEnum (UnknownNASPortType x)   = x+  toEnum 1  = AsyncNASPort+  toEnum 2  = SyncNASPort+  toEnum 3  = ISDNSyncPort+  toEnum 4  = ISDNAsyncV120Port+  toEnum 5  = ISDNAsyncV110Port+  toEnum 6  = VirtualNASPort+  toEnum 7  = PIAFSNASPort+  toEnum 8  = HDLCClearChannelNASPort+  toEnum 9  = X25NASPort+  toEnum 10 = X75NASPort+  toEnum 11 = G3FaxNASPort+  toEnum 12 = SDSLNASPort+  toEnum 13 = ADSLCAPNASPort+  toEnum 14 = ADSLDMTNASPort+  toEnum 15 = IDSLNASPort+  toEnum 16 = EthernetNASPort+  toEnum 17 = XDSLNASPort+  toEnum 18 = CableNASPort+  toEnum 19 = WirelessOtherNASPort+  toEnum 20 = WirelessIEEE80211NASPort+  toEnum x  = UnknownNASPortType x+ data ARAPZoneAccess = DefaultZoneOnlyARAPAccess                     | UseZoneFilterInclusivelyARAPAccess                     | UseZoneFilterExclusivelyARAPAccess+                    | UnknownARAPZoneAccess Int                     deriving (Show, Eq, Data)  instance Enum ARAPZoneAccess where     toEnum 1 = DefaultZoneOnlyARAPAccess     toEnum 2 = UseZoneFilterInclusivelyARAPAccess     toEnum 4 = UseZoneFilterExclusivelyARAPAccess-    toEnum n = error $ "Invalid RADIUS ARAP Zone Access " ++ show n-    fromEnum DefaultZoneOnlyARAPAccess = 1+    toEnum x = UnknownARAPZoneAccess x+    fromEnum DefaultZoneOnlyARAPAccess          = 1     fromEnum UseZoneFilterInclusivelyARAPAccess = 2     fromEnum UseZoneFilterExclusivelyARAPAccess = 4+    fromEnum (UnknownARAPZoneAccess x)          = x