{- ppdb: pretty-print a ShareGuard database Copyright (C) 2011 Clint Adams This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . -} import Config as C import DB as D import Text.Printf main = do conf <- C.getConfig "/usr/local/etc/shareguard.conf" up <- D.withDB conf $ \db -> D.getUserPw db fa <- D.withDB conf $ \db -> D.getUserDirs db own <- D.withDB conf $ \db -> D.getOwnership db printf "Users\n======\n" mapM_ showDoublet up printf "Authorizations\n=========\n" mapM_ showDoublet fa printf "Ownership\n=========\n" mapM_ showDoublet own showDoublet (x,y) = printf "%30s|%-30s\n" x y -- showTriplet (x,y,z) = printf "%20s|%-20s|%-20s\n" x y z