{"id":1177,"date":"2012-02-16T14:12:40","date_gmt":"2012-02-16T22:12:40","guid":{"rendered":"http:\/\/wp.colliertech.org\/cj\/?p=1177"},"modified":"2012-02-25T20:37:44","modified_gmt":"2012-02-26T04:37:44","slug":"nistnvd-cwe-development-follow-along","status":"publish","type":"post","link":"https:\/\/wp.c9h.org\/cj\/?p=1177","title":{"rendered":"NIST::NVD CWE development &#8211; follow along"},"content":{"rendered":"<p>I&#8217;m in the process of getting the tests passing for the 0.03 release of NIST::NVD::Store::SQLite3 wherein our hero imports the CWE data and cross-indexes it with CVEs and CPEs.<\/p>\n<p>Follow along and suggest some patches.  I&#8217;m developing on Debian Wheezy, but I would very much like input from devs on other platforms.<\/p>\n<p><a href=\"http:\/\/git.colliertech.org\/?p=NIST-NVD-Store-SQLite3.git;a=summary\">http:\/\/git.colliertech.org\/?p=NIST-NVD-Store-SQLite3.git;a=summary<\/a><\/p>\n<pre>\r\ncjac@foxtrot:\/tmp$ time git clone http:\/\/git.colliertech.org\/git\/NIST-NVD-Store-SQLite3.git\r\nCloning into 'NIST-NVD-Store-SQLite3'...\r\n\r\nreal\t0m32.757s\r\nuser\t0m0.200s\r\nsys\t0m0.088s\r\ncjac@foxtrot:\/tmp$ ls NIST-NVD-Store-SQLite3\/t\/data\/\r\ncwec_v2.1.xml  nvdcve-2.0-test.xml\r\n<\/pre>\n<p>Publish your patches and I&#8217;ll fetch them, or you can submit them in udiff format and I&#8217;ll review\/apply.  Thanks for playing along!<\/p>\n<p>[edit 20120216T1456 -0800]<br \/>\nSeems I need to update the NIST::NVD package as well.<\/p>\n<pre>cjac@foxtrot:\/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3$ rm t\/data\/*.db *.db ; perl Makefile.PL ; make ; time perl -Iblib\/lib \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/blib\/script\/convert-nvdcve --nvd \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/nvdcve-2.0-test.xml --cwe \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/cwec_v2.1.xml --store SQLite3\r\nrm: cannot remove `t\/data\/*.db': No such file or directory\r\nWriting Makefile for NIST::NVD::Store::SQLite3\r\nWriting MYMETA.yml and MYMETA.json\r\nSkip blib\/lib\/NIST\/NVD\/Store\/SQLite3.pm (unchanged)\r\ncp bin\/convert-nvdcve blib\/script\/convert-nvdcve\r\n\/usr\/bin\/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib\/script\/convert-nvdcve\r\nManifying blib\/man3\/NIST::NVD::Store::SQLite3.3pm\r\nusing store [SQLite3]\r\nreading NVDs from file: \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/nvdcve-2.0-test.xml.......................................................................read 68 entries\r\nProcessing CWE file...vvvvvvvvvvvvvvvvvvvvvvvvvvvcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwweeeeeeeeeDone.\r\nWriting CPE URNs to disk...Done.\r\nWriting NVD entries to disk....................................................................... Done.\r\nWriting CPE index to disk...Done.\r\nWriting CWE index to disk...Can't locate object method \"put_idx_cwe\" via package \"NIST::NVD::Update\" at \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/blib\/script\/convert-nvdcve line 77.\r\n\r\nreal\t0m13.072s\r\nuser\t0m12.421s\r\nsys\t0m0.044s\r\n<\/pre>\n<pre>\r\n$ time git clone http:\/\/git.colliertech.org\/git\/NIST-NVD.git\r\nCloning into 'NIST-NVD'...\r\n\r\nreal\t0m2.921s\r\nuser\t0m0.016s\r\nsys\t0m0.024s\r\n<\/pre>\n<p>[edit 20120216T16:28 -0800]<\/p>\n<pre>\r\ncjac@foxtrot:\/usr\/src\/git\/f5\/NIST-NVD$ git log | head -5\r\ncommit 82c72a79ee810c2b5c269a15dca5151ad67059f9\r\nAuthor: C.J. Adams-Collier <cjac@colliertech.org>\r\nDate:   Thu Feb 16 16:25:53 2012 -0800\r\n\r\n    added put_idx_cwe to NIST::NVD::Update\r\n<\/pre>\n<p>[edit 20120216T1635 -0800]<\/p>\n<pre>\r\ncjac@foxtrot:\/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3$ rm t\/data\/*.db *.db ; perl Makefile.PL ; make ; time perl -Iblib\/lib \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/blib\/script\/convert-nvdcve --nvd \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/nvdcve-2.0-test.xml --cwe \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/cwec_v2.1.xml --store SQLite3\r\nrm: cannot remove `t\/data\/*.db': No such file or directory\r\nWriting Makefile for NIST::NVD::Store::SQLite3\r\nWriting MYMETA.yml and MYMETA.json\r\nSkip blib\/lib\/NIST\/NVD\/Store\/SQLite3.pm (unchanged)\r\ncp bin\/convert-nvdcve blib\/script\/convert-nvdcve\r\n\/usr\/bin\/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib\/script\/convert-nvdcve\r\nManifying blib\/man3\/NIST::NVD::Store::SQLite3.3pm\r\nusing store [SQLite3]\r\nreading NVDs from file: \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/nvdcve-2.0-test.xml.......................................................................read 68 entries\r\nProcessing CWE file...vvvvvvvvvvvvvvvvvvvvvvvvvvvcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwweeeeeeeeeDone.\r\nWriting CPE URNs to disk...Done.\r\nWriting NVD entries to disk....................................................................... Done.\r\nWriting CPE index to disk...Done.\r\nWriting CWE index to disk...Done.\r\n\r\nreal\t0m13.968s\r\nuser\t0m13.225s\r\nsys\t0m0.064s\r\n<\/pre>\n<p>Alright.  before going to bed, I <a href=\"http:\/\/git.colliertech.org\/?p=NIST-NVD-Store-SQLite3.git;a=commit;h=7af4041d768778c35102d58723c6405608ce7d1b\">made those &#8220;w&#8221; characters above mean something<\/a>.  Same with some of the <a href=\"http:\/\/git.colliertech.org\/?p=NIST-NVD-Store-SQLite3.git;a=commitdiff;h=cf0cf728a278b2eabd8cfc257f80a1866e3d900c;hp=96d606582e76f2e1d833ab35dbef676dd036a439\">&#8220;v&#8221; characters above.<\/p>\n<p><a name=\"20120217T10:50\">[edit 20120217T10:50 -0800]<\/a><\/p>\n<p>Now processing the Categories from the CWE files.  At this point we have parsed the Description elements.  Next up are:<\/p>\n<p>[edit 20120217T11:35 -0800]<\/p>\n<ol>\n<li><del datetime=\"2012-02-17T20:33:29+00:00\">Likelihood_of_Exploit<\/del><\/li>\n<li><del datetime=\"2012-02-17T20:33:29+00:00\">Time_of_Introduction<\/del><\/li>\n<li><del datetime=\"2012-02-17T20:53:34+00:00\">Affected_Resources<\/del><\/li>\n<li><del datetime=\"2012-02-17T20:53:34+00:00\">Applicable_Platforms<\/del><\/li>\n<\/ol>\n<pre>\r\ncjac@foxtrot:\/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3$ rm t\/data\/*.db *.db ; perl Makefile.PL ; make ; time perl -Iblib\/lib \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/blib\/script\/convert-nvdcve --nvd \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/nvdcve-2.0-test.xml --cwe \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/cwec_v2.1.xml --store SQLite3\r\nrm: cannot remove `t\/data\/*.db': No such file or directory\r\nWriting Makefile for NIST::NVD::Store::SQLite3\r\nWriting MYMETA.yml and MYMETA.json\r\nSkip blib\/lib\/NIST\/NVD\/Store\/SQLite3.pm (unchanged)\r\ncp bin\/convert-nvdcve blib\/script\/convert-nvdcve\r\n\/usr\/bin\/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib\/script\/convert-nvdcve\r\nManifying blib\/man3\/NIST::NVD::Store::SQLite3.3pm\r\nusing store [SQLite3]\r\nreading NVDs from file: \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/nvdcve-2.0-test.xml.......................................................................Done.\r\nread 68 nvd entries\r\nProcessing CWE file...vvvvvvvvvvvvvvvvvvvvvvvvvvvvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDDDcvDDDcvDDDcvDDDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDDDcvDDDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDDDcvDDDcvDDDcvDDDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcvDDDcwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwweeeeeeeeeDone.\r\nread 27 cwe Views\r\nread 1 cwe Categories\r\nread 693 cwe Weaknesses\r\nread 1 cwe Compound Elements\r\nWriting CPE URNs to disk...Done.\r\nWriting NVD entries to disk....................................................................... Done.\r\nWriting CPE index to disk...Done.\r\nWriting CWE index to disk...Done.\r\n\r\nreal\t0m14.306s\r\nuser\t0m13.501s\r\nsys\t0m0.072s\r\n\r\n<\/pre>\n<p>[edit 20120217T1333 -0800]<\/p>\n<p>Alright, I&#8217;ve got enough of the CWE processing done that I feel comfortable releasing this stuff.  Let&#8217;s make sure that the data got all the way down into the database.  I&#8217;ll write some tests in t\/cwe.t to exercise the <a href=\"http:\/\/en.wikipedia.org\/wiki\/Create,_read,_update_and_delete\">CRUD<\/a><\/p>\n<p>[edit 20120217T1345 -0800]<\/p>\n<p>Tests are in place and failing (this is good, by the way).  Now to turn the tests green.<\/p>\n<pre>\r\ncjac@foxtrot:\/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3$ pushd ..\/NIST-NVD ; perl Makefile.PL ; make ; popd ; rm t\/data\/*.db *.db ; perl Makefile.PL ; make ; time prove -v -I..\/NIST-NVD\/blib\/lib -Iblib\/lib t\/cwe.t\r\n\/usr\/src\/git\/f5\/NIST-NVD \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3 \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3 \/usr\/src\/git\/f5\/NIST-NVD \/usr\/src\/git\/f5\/NIST-NVD \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3 \/usr\/src\/svn\/f5\/axiom\/branches\/cjac\/F5-Discovery\r\nWriting Makefile for NIST::NVD\r\nWriting MYMETA.yml and MYMETA.json\r\nSkip blib\/lib\/NIST\/NVD\/Store\/Base.pm (unchanged)\r\nSkip blib\/lib\/NIST\/NVD.pm (unchanged)\r\nSkip blib\/lib\/NIST\/NVD\/Query.pm (unchanged)\r\nSkip blib\/lib\/NIST\/NVD\/Update.pm (unchanged)\r\nSkip blib\/lib\/NIST\/NVD\/Store\/DB_File.pm (unchanged)\r\ncp bin\/convert-nvdcve blib\/script\/convert-nvdcve\r\n\/usr\/bin\/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib\/script\/convert-nvdcve\r\nManifying blib\/man3\/NIST::NVD::Store::Base.3pm\r\nManifying blib\/man3\/NIST::NVD.3pm\r\nManifying blib\/man3\/NIST::NVD::Query.3pm\r\nManifying blib\/man3\/NIST::NVD::Update.3pm\r\nManifying blib\/man3\/NIST::NVD::Store::DB_File.3pm\r\n\/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3 \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3 \/usr\/src\/git\/f5\/NIST-NVD \/usr\/src\/git\/f5\/NIST-NVD \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3 \/usr\/src\/svn\/f5\/axiom\/branches\/cjac\/F5-Discovery\r\nrm: cannot remove `t\/data\/*.db': No such file or directory\r\nWriting Makefile for NIST::NVD::Store::SQLite3\r\nWriting MYMETA.yml and MYMETA.json\r\nSkip blib\/lib\/NIST\/NVD\/Store\/SQLite3.pm (unchanged)\r\ncp bin\/convert-nvdcve blib\/script\/convert-nvdcve\r\n\/usr\/bin\/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib\/script\/convert-nvdcve\r\nManifying blib\/man3\/NIST::NVD::Store::SQLite3.3pm\r\nt\/cwe.t .. \r\n1..10\r\nok 1 - use NIST::NVD::Query;\r\nok 2 - no error\r\nok 3 - constructor returned an object of correct class\r\nnot ok 4 - cve_for_cpe returned ARRAY ref\r\n\r\n#   Failed test 'cve_for_cpe returned ARRAY ref'\r\n#   at t\/cwe.t line 36.\r\n#          got: ''\r\n#     expected: 'ARRAY'\r\nnot ok 5 - cwe_for_cpe returned ARRAY ref\r\n\r\n#   Failed test 'cwe_for_cpe returned ARRAY ref'\r\n#   at t\/cwe.t line 37.\r\n#          got: ''\r\n#     expected: 'ARRAY'\r\nCan't use an undefined value as an ARRAY reference at t\/cwe.t line 39.\r\n# Looks like you planned 10 tests but ran 5.\r\n# Looks like you failed 2 tests of 5 run.\r\n# Looks like your test exited with 2 just after 5.\r\nDubious, test returned 2 (wstat 512, 0x200)\r\nFailed 7\/10 subtests \r\n\r\nTest Summary Report\r\n-------------------\r\nt\/cwe.t (Wstat: 512 Tests: 5 Failed: 2)\r\n  Failed tests:  4-5\r\n  Non-zero exit status: 2\r\n  Parse errors: Bad plan.  You planned 10 tests but ran 5.\r\nFiles=1, Tests=5,  1 wallclock secs ( 0.02 usr  0.00 sys +  0.07 cusr  0.01 csys =  0.10 CPU)\r\nResult: FAIL\r\n\r\nreal\t0m0.442s\r\nuser\t0m0.144s\r\nsys\t0m0.028s\r\n\r\n<\/pre>\n<p>[edit 20120220T1311 -0800]<\/p>\n<p>CWE load is passing.  It takes 13 seconds to process all CWEs in cwec_v2.1.xml and some recent CVEs from the 13th of December of 2011.  It seems I&#8217;ve broken t\/query.t, though.  When it&#8217;s green I&#8217;ll push a new release.  Everything is in <a href=\"http:\/\/git.colliertech.org\/?p=NIST-NVD-Store-SQLite3.git;a=summary\">master<\/a>.  Check it out if you like pain.<\/p>\n<pre>\r\ncjac@foxtrot:\/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3$ rm t\/data\/*.db ; pushd ..\/NIST-NVD\/ ; perl Makefile.PL ; make ; popd ; perl -I..\/NIST-NVD\/blib\/lib Makefile.PL ; make ; PERL5LIB=..\/NIST-NVD\/blib\/lib:blib\/lib prove -I..\/NIST-NVD\/blib\/lib -bv t\/01-load-nvdcve.t \r\n\/usr\/src\/git\/f5\/NIST-NVD \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\r\nWriting Makefile for NIST::NVD\r\nWriting MYMETA.yml and MYMETA.json\r\nSkip blib\/lib\/NIST\/NVD\/Store\/Base.pm (unchanged)\r\nSkip blib\/lib\/NIST\/NVD.pm (unchanged)\r\nSkip blib\/lib\/NIST\/NVD\/Query.pm (unchanged)\r\nSkip blib\/lib\/NIST\/NVD\/Update.pm (unchanged)\r\nSkip blib\/lib\/NIST\/NVD\/Store\/DB_File.pm (unchanged)\r\ncp bin\/convert-nvdcve blib\/script\/convert-nvdcve\r\n\/usr\/bin\/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib\/script\/convert-nvdcve\r\nManifying blib\/man3\/NIST::NVD::Store::Base.3pm\r\nManifying blib\/man3\/NIST::NVD.3pm\r\nManifying blib\/man3\/NIST::NVD::Query.3pm\r\nManifying blib\/man3\/NIST::NVD::Update.3pm\r\nManifying blib\/man3\/NIST::NVD::Store::DB_File.3pm\r\n\/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\r\nWriting Makefile for NIST::NVD::Store::SQLite3\r\nWriting MYMETA.yml and MYMETA.json\r\nSkip blib\/lib\/NIST\/NVD\/Store\/SQLite3.pm (unchanged)\r\ncp bin\/convert-nvdcve blib\/script\/convert-nvdcve\r\n\/usr\/bin\/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib\/script\/convert-nvdcve\r\nManifying blib\/man3\/NIST::NVD::Store::SQLite3.3pm\r\nt\/01-load-nvdcve.t .. \r\n1..20\r\nok 1 - $dist_dir is a directory\r\nok 2 - $test_dir is a directory\r\nok 3 - $data_dir is a directory\r\nok 4 - $convert_script is a file\r\nok 5 - $nvd_source_file is a file\r\nok 6 - $db_file does not yet exist\r\n# running \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/blib\/script\/convert-nvdcve --nvd \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/nvdcve-2.0-test.xml --cwe \/usr\/src\/git\/f5\/NIST-NVD-Store-SQLite3\/t\/data\/cwec_v2.1.xml --store SQLite3 2>&1\r\nok 7 - took less than 15 seconds to load CWE data: 13\r\nok 8 - conversion script returned cleanly\r\nok 9 - database file exists\r\nok 10 - database file not empty\r\nok 11 - database file readable\r\nok 12 - database file writeable\r\nok 13 - database file not executable\r\nok 14 - file is correct type: [application\/octet-stream]\r\nok 15 - $mtime is close\r\nok 16 - opened database file for reading\r\nok 17 - file contents indicate correct type: [application\/octet-stream]\r\nok 18 - file contents indicate correct type: [application\/octet-stream]\r\nok 19 - file contents indicate correct type: [SQLite 3.x database]\r\nok 20 - constructor returned an object of correct class\r\nok\r\nAll tests successful.\r\nFiles=1, Tests=20, 13 wallclock secs ( 0.02 usr  0.02 sys + 12.78 cusr  0.07 csys = 12.89 CPU)\r\nResult: PASS\r\n\r\n<\/pre>\n<p>[edit 20120220T2220 -0800]<br \/>\nOkay, it&#8217;s published.  I&#8217;ll need to factor the changes in to the DB_File storage engine as well.<\/p>\n<p>[edit 20120225T20:27 -0800]<br \/>\nJust published an update.  It probably works better.  <\/p>\n<p>Next up is creating another index from cpe urn to cwe data<\/p>\n\n<div class=\"twitter-share\"><a href=\"https:\/\/twitter.com\/intent\/tweet?via=cjamescollier\" class=\"twitter-share-button\">Tweet<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;m in the process of getting the tests passing for the 0.03 release of NIST::NVD::Store::SQLite3 wherein our hero imports the CWE data and cross-indexes it with CVEs and CPEs. Follow along and suggest some patches. I&#8217;m developing on Debian Wheezy, but I would very much like input from devs on other platforms. http:\/\/git.colliertech.org\/?p=NIST-NVD-Store-SQLite3.git;a=summary cjac@foxtrot:\/tmp$ time [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[111,165,17,221,79,207,163,225,18,101,166,236,88,235],"tags":[],"class_list":["post-1177","post","type-post","status-publish","format-standard","hentry","category-abuse","category-databases","category-debian","category-f5-networks","category-free-software","category-git","category-networking","category-nist","category-perl","category-security","category-software","category-sqlite","category-syndication","category-wheezy"],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p1YDIB-iZ","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/posts\/1177","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1177"}],"version-history":[{"count":19,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/posts\/1177\/revisions"}],"predecessor-version":[{"id":1179,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/posts\/1177\/revisions\/1179"}],"wp:attachment":[{"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1177"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1177"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1177"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}