Author: ctian Date: Thu Sep 20 00:52:55 2007 New Revision: 47
Removed: trunk/advance.lisp trunk/asn.1/mib-parse.lisp Modified: trunk/asn.1/mib.lisp trunk/net-snmp.asd Log: Commit changes
Modified: trunk/asn.1/mib.lisp ============================================================================== --- trunk/asn.1/mib.lisp (original) +++ trunk/asn.1/mib.lisp Thu Sep 20 00:52:55 2007 @@ -41,6 +41,36 @@ (defmethod print-object ((obj object-id) stream) (format stream "[~{.~A~}]" (oid-subids obj)))
+ +;;; MIB +;;; +;;; This is the data type describing the Management Information Base. +;;; Its main component is the ID-TREE, which maps object identifiers +;;; (OIDs) to variables and their names. The structure of the id-tree +;;; looks like this: +;;; +;;; (nil (1 ("iso") +;;; (3 ("org") +;;; (6 ("dod") +;;; (1 ("internet") +;;; (1 ("directory")) +;;; (2 ("mgmt") +;;; (1 ("mib-2") +;;; (1 ("system") +;;; (1 ("sysDescr" #<MIB-VARIABLE sysDescr>)) +;;; (2 ("sysObjectID" #<MIB-VARIABLE sysObjectID>)) +;;; ...) +;;; (2 ("interfaces") +;;; (1 ("ifNumber") ...) +;;; ...) +;;; ...))))))) +;;; +;;; Note that this structure is somewhat wasteful: it would be more +;;; efficient if the subtrees preceded the values in the parent lists. +;;; Unfortunately this would make the printed representation more +;;; difficult to read. Once this has been tested, this should be +;;; slightly redesigned. + (defparameter *mib-tree* '(nil nil (1 ("iso") (3 ("org") (6 ("dod")))))) @@ -89,6 +119,6 @@ (defun test-syntax (name) (parse-mib (merge-pathnames (make-pathname :name name :type "asn" - :directory '(:relative "asn.1" "test")) + :directory '(:relative "asn.1" "test")) (asdf:component-pathname (asdf:find-system :net-snmp)))))
Modified: trunk/net-snmp.asd ============================================================================== --- trunk/net-snmp.asd (original) +++ trunk/net-snmp.asd Thu Sep 20 00:52:55 2007 @@ -9,11 +9,12 @@ :description "Common Lisp interface for Net-SNMP" :version "0.6" :author "Chun Tian (binghe) binghe.lisp@gmail.com" - :depends-on (:cffi - :ironclad - :net-telent-date - :iolib - :zebu) + :depends-on (:cl-ppcre ; for oid resolve + :ironclad ; for v3 support + :net-telent-date ; for time conv + :iolib ; for network + :zebu ; for asn.1 parse + ) :components ((:module asn.1 :components ((:file "package") (:file "syntax" :depends-on ("package")) (:file "ber" :depends-on ("package")) @@ -26,8 +27,7 @@ (:file "snmp-api" :depends-on ("typedefs")) (:file "load" :depends-on ("snmp-api")) (:file "asn1" :depends-on ("load")) - (:file "classes" :depends-on ("asn1")) - (:file "advance" :depends-on ("classes")))) + (:file "classes" :depends-on ("asn1"))))
(defsystem sabrina :description "Sabrina - Update server status into database"