module Cidr
( Cidr,
from_string,
+ is_valid_cidr,
min_first_octet,
max_first_octet,
min_second_octet,
import Data.Char (digitToInt, intToDigit)
import Numeric (readInt, showIntAtBase)
+import Text.Regex.Posix
+
import ListUtils
type Maskbits = Int
maskbits :: Maskbits }
deriving (Show)
+-- Will return True if the passed String is in CIDR notation, False
+-- otherwise.
+is_valid_cidr :: String -> Bool
+is_valid_cidr cidr = cidr =~ "([0-9]{1,3}\\.){3}[0-9]{1,3}/[0-9]{1,2}"
+
first :: (a,b,c,d) -> a
first (w,_,_,_) = w