rtnetlink 0.1.0.0 → 0.1.0.1
raw patch · 9 files changed
+24/−10 lines, 9 filesdep ~base
Dependency ranges changed: base
Files
- ChangeLog.md +5/−1
- rtnetlink.cabal +5/−5
- src/System/Linux/RTNetlink.hs +3/−1
- src/System/Linux/RTNetlink/Address.hsc +2/−0
- src/System/Linux/RTNetlink/Link.hsc +1/−0
- src/System/Linux/RTNetlink/Message.hsc +2/−1
- src/System/Linux/RTNetlink/Packet.hsc +3/−1
- src/System/Socket/Family/Netlink.hsc +1/−0
- tests/Main.hs +2/−1
ChangeLog.md view
@@ -1,5 +1,9 @@ # Revision history for rtnetlink -## 0.1.0.0 -- YYYY-mm-dd+## 0.1.0.1 -- 2017-03-25++* Provide support for base-4.7.\*++## 0.1.0.0 -- 2017-03-24 * First version. Released on an unsuspecting world.
rtnetlink.cabal view
@@ -1,5 +1,5 @@ name: rtnetlink-version: 0.1.0.0+version: 0.1.0.1 synopsis: Manipulate network devices, addresses, and routes on Linux description: A high-level, extensible, pure Haskell interface to the ROUTE_NETLINK subsystem of netlink for manipulating@@ -31,7 +31,7 @@ hs-source-dirs: tests main-is: Main.hs build-depends:- base >=4.9 && <4.10,+ base >=4.7 && <4.10, hspec >=2.4 && <2.5, socket >=0.8 && <0.9, unix >=2.7 && <2.8,@@ -40,7 +40,7 @@ executable rtnl-link if flag(examples) build-depends:- base >=4.9 && <4.10,+ base >=4.7 && <4.10, bytestring >=0.10 && <0.11, rtnetlink else@@ -51,7 +51,7 @@ executable rtnl-address if flag(examples) build-depends:- base >=4.9 && <4.10,+ base >=4.7 && <4.10, socket >=0.8 && <0.9, split >=0.2 && <0.3, rtnetlink@@ -80,7 +80,7 @@ RecordWildCards, TypeFamilies build-depends:- base >=4.9 && <4.10,+ base >=4.7 && <4.10, bytestring >=0.10 && <0.11, cereal >=0.5 && <0.6, monad-loops >=0.4 && <0.5,
src/System/Linux/RTNetlink.hs view
@@ -70,11 +70,13 @@ , liftIO ) where +import Control.Applicative (Applicative(..), (<$>)) import Control.Monad (when, void) import Control.Monad.IO.Class (MonadIO(..)) import Control.Monad.Loops (unfoldM) import Control.Monad.State (MonadState, StateT, evalStateT) import Control.Monad.State (get, gets, put, modify, modify')+import Data.Monoid (mempty) import Data.Either (partitionEithers) import Data.List (partition) import Data.Serialize (encode)@@ -107,7 +109,7 @@ -- | Run an RTNL function and catch all @IOError@s. This means that functions -- in this module are guaranteed not to throw uncaught exceptions. tryRTNL :: RTNL a -> IO (Either String a)-tryRTNL = fmap (left (\e -> X.displayException (e::IOError))) . X.try . runRTNL+tryRTNL = fmap (left (\e -> show (e::IOError))) . X.try . runRTNL -- | Run an RTNL function. RTNL functions in this module throw exclusively -- @IOError@s.
src/System/Linux/RTNetlink/Address.hsc view
@@ -26,7 +26,9 @@ , Inet6Address ) where +import Control.Applicative ((<$>), (<*>)) import Control.Monad (guard)+import Data.Monoid (mempty) import Data.Serialize (Serialize, Get, Putter, get, put, runPut) import Data.Serialize (getWord32host, putWord32host, getWord8) import Data.Serialize (putWord8, getWord16be, putWord16be)
src/System/Linux/RTNetlink/Link.hsc view
@@ -17,6 +17,7 @@ {-# LANGUAGE TypeFamilies #-} module System.Linux.RTNetlink.Link where +import Control.Applicative ((<$>), (<*>)) import Data.Bits ((.&.)) import Data.Int (Int32) import Data.Monoid ((<>))
src/System/Linux/RTNetlink/Message.hsc view
@@ -28,10 +28,11 @@ {-# LANGUAGE TypeFamilies #-} module System.Linux.RTNetlink.Message where +import Control.Applicative ((<$>), (<*>)) import Control.Monad (guard)-import Data.Monoid (mempty) import Data.Int (Int32) import Data.List (nub)+import Data.Monoid (mempty) import Data.Serialize import Data.Word (Word16, Word32) import qualified Data.ByteString as S
src/System/Linux/RTNetlink/Packet.hsc view
@@ -33,15 +33,17 @@ , putAligned ) where +import Control.Applicative ((<$>), (<*>)) import Control.Monad (guard) import Control.Monad.Loops (unfoldM) import Control.Monad.Trans (lift) import Control.Monad.Trans.Maybe (runMaybeT) import Data.Bits ((.|.), (.&.), xor) import Data.List (unfoldr, find)+import Data.Maybe (listToMaybe)+import Data.Monoid (Monoid, mempty, mappend) import Data.Serialize import Data.Word (Word16,Word32)-import Data.Maybe (listToMaybe) import qualified Data.ByteString as S #include <linux/netlink.h>
src/System/Socket/Family/Netlink.hsc view
@@ -22,6 +22,7 @@ ) where import Data.Bits ((.|.))+import Data.Functor ((<$>)) import Data.Serialize (Serialize(..), encode, decode) import Data.Serialize (putWord16host, putWord32host, getWord16host, getWord32host) import Foreign.Ptr (castPtr)
tests/Main.hs view
@@ -2,9 +2,10 @@ module Main where import Control.Exception (bracket)+import Data.Functor ((<$>))+import System.Posix (getEffectiveUserID) import System.Socket.Family.Inet (inetAddressFromTuple) import System.Socket.Family.Inet6 (inet6AddressFromTuple)-import System.Posix (getEffectiveUserID) import Test.Hspec