<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">The Mac OS Installer program writes receipt files to a database after installing software. This receipt information includes version, install time, install volume,&nbsp;install location, and any
 groups the installed package may be a part of. This receipt information is precisely the type of data OVAL is frequently used to examine. This sort of information is already collected in other component schemas using the dpkginfo,&nbsp;rmpinfo, and other tests.<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;</span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">The Apple provided way to get at this information is the &quot;pkgutil&quot; command line tool. It is proposed to create an OVAL test and supporting items based on the<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&quot;pkgutil --pkg-info&quot; command output.<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;</span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">A detailed paper describing this test can be found at&nbsp;<a href="https://github.com/jasenj1/Sandbox/blob/master/resources/x-macos-pkginfo/Mac%20OS%20X%20pkginfo%20Test.docx" style="color: purple; ">https://github.com/OVALProject/Sandbox/blob/master/resources/x-macos-pkginfo/Mac%20OS%20X%20pkginfo%20Test.docx</a><o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;</span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">The proposed schema can be viewed at&nbsp;<a href="https://github.com/jasenj1/Sandbox/blob/master/x-macos-pkginfo.xsd" style="color: purple; ">https://github.com/OVALProject/Sandbox/blob/master/x-macos-pkginfo.xsd</a><o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;</span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">The Linux rpminfo test is very similar to what is being proposed and provides a good model.&nbsp;<a href="http://oval.mitre.org/language/version5.10.1/ovaldefinition/documentation/linux-definitions-schema.html#rpminfo_test" style="color: purple; ">http://oval.mitre.org/language/version5.10.1/ovaldefinition/documentation/linux-definitions-schema.html#rpminfo_test</a><o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;</span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">The structure of the proposed test is as follows:<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;</span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">pkginfo_object<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span class="apple-tab-span"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">package_id  The ID of the package to examine&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span class="apple-tab-span"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">(volume? - pkgutil allows a different volume to be specified. It's
 unclear if this would be needed or useful.)<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;</span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">pkginfo_state &amp; pkginfo_item<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span class="apple-tab-span"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">package_id  The ID of the package examined<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span class="apple-tab-span"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">version  The version of the package<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span class="apple-tab-span"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">install_time  When the package was installed. Given in&nbsp;seconds since
 the UNIX epoch.<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span class="apple-tab-span"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">volume  The volume the package is installed on.<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span class="apple-tab-span"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">location  The path where the package was installed, if specified
 at time of install.<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span class="apple-tab-span"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">group  The group(s) the package is a part of. Element repeats for
 multiple groups.<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span class="apple-tab-span"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">(filepath? file(s)&nbsp;associated with the package. See question below
 for discussion of this.)<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;</span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">Questions:<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="color: rgb(0, 0, 0); font-family: 'Times New Roman', serif; font-size: 12pt; margin: 0in 0in 0.0001pt; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; "><br>
</span></p>
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; "><font face="Calibri,sans-serif" size="3">Exactly what portions of the information provided by --pkg-info are needed for OVAL? e.g.&nbsp;Volume, location, group, filepath?</font></p>
<p class="MsoNormal" style="color: rgb(0, 0, 0); font-family: 'Times New Roman', serif; font-size: 12pt; margin: 0in 0in 0.0001pt; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;</span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">Is there a public API to get the information provided by pkgutil? Or is calling the command the only way to get it?<o:p></o:p></span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">&nbsp;</span></p>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri; font-size: medium; ">
<p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">
<span style="font-size: 10.5pt; font-family: Calibri, sans-serif; ">The rpminfo test has a &quot;filepaths&quot; behavior that will collect all of the files associated with a package. pkgutil supports the same function using the &quot;-- files&quot;&nbsp;command. Should this be added
 to the pkginfo test?</span></p>
</div>
</body>
</html>