Module Name: src Committed By: christos Date: Fri Dec 4 01:06:17 UTC 2015
Added Files: src/tests/sbin/gpt: Makefile gpt.2disk.show.guid gpt.2part.show.normal gpt.backup gpt.empty.show.normal t_gpt.sh Log Message: Add some gpt tests To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 src/tests/sbin/gpt/Makefile \ src/tests/sbin/gpt/gpt.2disk.show.guid \ src/tests/sbin/gpt/gpt.2part.show.normal src/tests/sbin/gpt/gpt.backup \ src/tests/sbin/gpt/gpt.empty.show.normal src/tests/sbin/gpt/t_gpt.sh Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Added files: Index: src/tests/sbin/gpt/Makefile diff -u /dev/null src/tests/sbin/gpt/Makefile:1.1 --- /dev/null Thu Dec 3 20:06:17 2015 +++ src/tests/sbin/gpt/Makefile Thu Dec 3 20:06:17 2015 @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.1 2015/12/04 01:06:17 christos Exp $ + +.include <bsd.own.mk> + +TESTSDIR= ${TESTSBASE}/sbin/gpt + +TESTS_SH= t_gpt + +FILESDIR= ${TESTSDIR} +FILES= gpt.2disk.guid gpt.2part gpt.backup gpt.empty + +.include <bsd.test.mk> Index: src/tests/sbin/gpt/gpt.2disk.show.guid diff -u /dev/null src/tests/sbin/gpt/gpt.2disk.show.guid:1.1 --- /dev/null Thu Dec 3 20:06:17 2015 +++ src/tests/sbin/gpt/gpt.2disk.show.guid Thu Dec 3 20:06:17 2015 @@ -0,0 +1,8 @@ + start size index contents + 0 1 PMBR + 1 1 Pri GPT header + 2 32 Pri GPT table + 34 1024 1 GPT part - 14a91fdb-6cc2-43a5-8921-af015f62afa2 + 1058 9150 2 GPT part - a375ee9c-e829-4980-a239-6784f039c7f1 + 10208 32 Sec GPT table + 10240 1 Sec GPT header Index: src/tests/sbin/gpt/gpt.2part.show.normal diff -u /dev/null src/tests/sbin/gpt/gpt.2part.show.normal:1.1 --- /dev/null Thu Dec 3 20:06:17 2015 +++ src/tests/sbin/gpt/gpt.2part.show.normal Thu Dec 3 20:06:17 2015 @@ -0,0 +1,8 @@ + start size index contents + 0 1 PMBR + 1 1 Pri GPT header + 2 32 Pri GPT table + 34 1024 1 GPT part - EFI System + 1058 9150 2 GPT part - NetBSD FFSv1/FFSv2 + 10208 32 Sec GPT table + 10240 1 Sec GPT header Index: src/tests/sbin/gpt/gpt.backup diff -u /dev/null src/tests/sbin/gpt/gpt.backup:1.1 --- /dev/null Thu Dec 3 20:06:17 2015 +++ src/tests/sbin/gpt/gpt.backup Thu Dec 3 20:06:17 2015 @@ -0,0 +1,1851 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>GPT_HDR</key> + <dict> + <key>entries</key> + <integer>128</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>revision</key> + <integer>0x10000</integer> + </dict> + <key>GPT_TBL</key> + <dict> + <key>gpt_array</key> + <array> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x421</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>1</integer> + <key>start</key> + <integer>0x22</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x27df</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>2</integer> + <key>start</key> + <integer>0x422</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>3</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>4</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>5</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>6</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>7</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>8</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>9</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>10</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>11</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>12</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>13</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>14</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>15</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>16</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>17</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>18</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>19</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>20</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>21</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>22</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>23</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>24</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>25</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>26</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>27</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>28</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>29</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>30</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>31</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>32</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>33</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>34</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>35</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>36</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>37</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>38</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>39</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>40</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>41</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>42</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>43</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>44</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>45</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>46</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>47</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>48</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>49</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>50</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>51</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>52</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>53</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>54</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>55</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>56</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>57</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>58</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>59</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>60</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>61</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>62</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>63</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>64</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>65</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>66</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>67</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>68</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>69</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>70</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>71</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>72</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>73</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>74</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>75</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>76</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>77</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>78</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>79</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>80</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>81</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>82</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>83</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>84</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>85</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>86</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>87</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>88</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>89</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>90</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>91</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>92</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>93</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>94</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>95</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>96</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>97</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>98</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>99</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>100</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>101</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>102</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>103</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>104</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>105</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>106</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>107</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>108</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>109</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>110</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>111</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>112</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>113</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>114</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>115</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>116</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>117</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>118</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>119</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>120</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>121</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>122</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>123</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>124</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>125</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>126</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>127</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + <dict> + <key>attributes</key> + <integer>0x0</integer> + <key>end</key> + <integer>0x0</integer> + <key>guid</key> + <string>00000000-0000-0000-0000-000000000000</string> + <key>index</key> + <integer>128</integer> + <key>start</key> + <integer>0x0</integer> + <key>type</key> + <string>00000000-0000-0000-0000-000000000000</string> + </dict> + </array> + </dict> + <key>MBR</key> + <dict> + <key>code</key> + <data>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</data> + <key>mbr_array</key> + <array> + <dict> + <key>end_cylinder</key> + <integer>0xff</integer> + <key>end_head</key> + <integer>0xfe</integer> + <key>end_sector</key> + <integer>0xff</integer> + <key>flag</key> + <integer>0x0</integer> + <key>index</key> + <integer>0</integer> + <key>lba_size_high</key> + <integer>0x0</integer> + <key>lba_size_low</key> + <integer>0x2800</integer> + <key>lba_start_high</key> + <integer>0x0</integer> + <key>lba_start_low</key> + <integer>0x1</integer> + <key>start_cylinder</key> + <integer>0x0</integer> + <key>start_head</key> + <integer>0x0</integer> + <key>start_sector</key> + <integer>0x2</integer> + <key>type</key> + <integer>0xee</integer> + </dict> + </array> + </dict> + <key>sector_size</key> + <integer>512</integer> +</dict> +</plist> Index: src/tests/sbin/gpt/gpt.empty.show.normal diff -u /dev/null src/tests/sbin/gpt/gpt.empty.show.normal:1.1 --- /dev/null Thu Dec 3 20:06:17 2015 +++ src/tests/sbin/gpt/gpt.empty.show.normal Thu Dec 3 20:06:17 2015 @@ -0,0 +1,7 @@ + start size index contents + 0 1 PMBR + 1 1 Pri GPT header + 2 32 Pri GPT table + 34 10174 Unused + 10208 32 Sec GPT table + 10240 1 Sec GPT header Index: src/tests/sbin/gpt/t_gpt.sh diff -u /dev/null src/tests/sbin/gpt/t_gpt.sh:1.1 --- /dev/null Thu Dec 3 20:06:17 2015 +++ src/tests/sbin/gpt/t_gpt.sh Thu Dec 3 20:06:17 2015 @@ -0,0 +1,147 @@ +#!/bin/sh +# $NetBSD: t_gpt.sh,v 1.1 2015/12/04 01:06:17 christos Exp $ +# +# Copyright (c) 2011 The NetBSD Foundation, Inc. +# All rights reserved. +# +# This code is derived from software contributed to The NetBSD Foundation +# by Jukka Ruohonen. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# + +size=10240 +shdr=34 +disk=gpt.disk +uuid="........-....-....-....-............" +zero="00000000-0000-0000-0000-000000000000" + +prepare() { + rm -f $disk + dd if=/dev/zero of=$disk seek=$size count=1 +} + +prepare_2part() { + prepare + atf_check -s exit:0 -o empty -e empty gpt create $disk + atf_check -s exit:0 -o match:"$(partmsg 1 34 1024)" -e empty \ + gpt add -t efi -s 1024 $disk + atf_check -s exit:0 -o match:"$(partmsg 2 1058 9150)" -e empty \ + gpt add $disk +} + +check_2part() { + atf_check -s exit:0 -o file:gpt.2part.show.normal \ + -e empty gpt show $disk + atf_check -s exit:0 -o file:gpt.2part.show.guid \ + -e empty gpt show -g $disk +} + +partmsg() { + echo "^$disk: Partition $1 added: $uuid $2 $3\$" +} + +recovermsg() { + echo "^$disk: Recovered $1 GPT [a-z]* from $2\$" +} + +atf_test_case create_empty +create_empty_head() { + atf_set "descr" "Create empty disk" +} + +create_empty_body() { + prepare + atf_check -s exit:0 -o empty -e empty gpt create $disk + atf_check -s exit:0 -o file:gpt.empty.show.normal \ + -e empty gpt show $disk +} + +atf_test_case create_2part +create_2part_head() { + atf_set "descr" "Create 2 partition disk" +} + +create_2part_body() { + prepare_2part + check_2part +} + +atf_test_case backup_2part +backup_2part_head() { + atf_set "descr" "Backup 2 partition disk" +} + +backup_2part_body() { + prepare_2part + atf_check -s exit:0 -o save:test.backup -e empty gpt backup $disk + atf_check -s exit:0 -o file:gpt.backup -e empty \ + sed -e "s/$uuid/$zero/g" test.backup +} + +atf_test_case restore_2part +restore_2part_head() { + atf_set "descr" "Restore 2 partition disk" +} + +restore_2part_body() { + prepare_2part + atf_check -s exit:0 -o save:test.backup -e empty gpt backup $disk + prepare + atf_check -s exit:0 -o empty -e empty gpt restore -i test.backup $disk + check_2part +} + +atf_test_case recover_backup +recover_backup_head() { + atf_set "descr" "Recover the backup GPT header and table" +} + +recover_backup_body() { + prepare_2part + dd conv=notrunc if=/dev/zero of=$disk seek=$((size - shdr)) count=$shdr + atf_check -s exit:0 -o match:"$(recovermsg secondary primary)" \ + -e empty gpt recover $disk + check_2part +} + +atf_test_case recover_primary +recover_primary_head() { + atf_set "descr" "Recover the primary GPT header and table" +} + +recover_primary_body() { + prepare_2part + dd conv=notrunc if=/dev/zero of=$disk seek=1 count=$shdr + atf_check -s exit:0 -o match:"$(recovermsg primary secondary)" \ + -e empty gpt recover $disk + check_2part +} + +atf_init_test_cases() { + atf_add_test_case create_empty + atf_add_test_case create_2part + atf_add_test_case backup_2part + atf_add_test_case restore_2part + atf_add_test_case recover_backup + atf_add_test_case recover_primary +}