From 05f3196fbdd7af4a88fad3f085c76ecdbba73e4d Mon Sep 17 00:00:00 2001 From: "Martin A. Brown" Date: Sun, 24 Jan 2016 15:30:35 -0800 Subject: [PATCH] moving images into ./images/ directory so that they are available in output tree, as well --- .../Secure-Programs-HOWTO.sgml | 6 +- .../Secure-Programs-HOWTO/images/dwheel1.jpg | Bin 0 -> 5454 bytes .../images/dwheeler2003b.jpg | Bin 0 -> 9966 bytes .../Secure-Programs-HOWTO/images/program.dia | Bin 0 -> 1140 bytes .../Secure-Programs-HOWTO/images/program.eps | 436 ++++++++++++++++++ .../Secure-Programs-HOWTO/images/program.gif | Bin 0 -> 3131 bytes .../Secure-Programs-HOWTO/images/program.png | Bin 0 -> 4038 bytes 7 files changed, 439 insertions(+), 3 deletions(-) create mode 100644 LDP/howto/docbook/Secure-Programs-HOWTO/images/dwheel1.jpg create mode 100644 LDP/howto/docbook/Secure-Programs-HOWTO/images/dwheeler2003b.jpg create mode 100644 LDP/howto/docbook/Secure-Programs-HOWTO/images/program.dia create mode 100644 LDP/howto/docbook/Secure-Programs-HOWTO/images/program.eps create mode 100644 LDP/howto/docbook/Secure-Programs-HOWTO/images/program.gif create mode 100644 LDP/howto/docbook/Secure-Programs-HOWTO/images/program.png diff --git a/LDP/howto/docbook/Secure-Programs-HOWTO/Secure-Programs-HOWTO.sgml b/LDP/howto/docbook/Secure-Programs-HOWTO/Secure-Programs-HOWTO.sgml index a30e7cf3..cbf304b9 100644 --- a/LDP/howto/docbook/Secure-Programs-HOWTO/Secure-Programs-HOWTO.sgml +++ b/LDP/howto/docbook/Secure-Programs-HOWTO/Secure-Programs-HOWTO.sgml @@ -509,10 +509,10 @@ numbers (). Abstract View of a Program - + - + @@ -17499,7 +17499,7 @@ per the license agreement included above. - + David A. Wheeler diff --git a/LDP/howto/docbook/Secure-Programs-HOWTO/images/dwheel1.jpg b/LDP/howto/docbook/Secure-Programs-HOWTO/images/dwheel1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a28024c470d9c0ad4d441d39306e5a9bac4df7a8 GIT binary patch literal 5454 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 a$S9#-oT!X*q(QP7^Es?)oo~KBE&d;ME*Mk* literal 0 HcmV?d00001 diff --git a/LDP/howto/docbook/Secure-Programs-HOWTO/images/program.dia b/LDP/howto/docbook/Secure-Programs-HOWTO/images/program.dia new file mode 100644 index 0000000000000000000000000000000000000000..a6f51201da2ad517a65056ebbd4c3d43b1bf0a9c GIT binary patch literal 1140 zcmV-)1dID0iwFP!000001MQk!Z>u;EhVSz$5S3QD66KqOoTNS4?%q_Y)YZ24kpoWR zU1KBLG(9)_+jq!ELkLL<1*xY>FVceHWeoGqGo~4Te@&?Nf`ufU-RO>K>)&sCA`Tt`T1vI9FCB10Gr=lJz%As#SS|KL-zHJmKyHD_e4$#=lMB9_R21OT20E<4);ev@ z1eMb4x z=smz}Gc?E7PbrSbj6~YKlo^(W_6thVQE#;y-15v*63O3wYO~wWK|=6lQE!)fUPHAB#cX~&$grvG$*G@F&7V3X5@fa9tMA*r+5$X~ zzj$zTP4U%h1Z_83x)%pxAERl|)Lqbuw(hRb8wRkvTz9yh>GbVj+wguamfo{8Q(+&c-;O-0K&aTFt-y!Y>jVbPBjCF*zcKUs9WsB|w8jh#$E*EM^Rs0JR9({zg5e0%`=Rd}K>mFD za}oa!MCmop;5PFfR|_n9>H4j)ymSF)6Xj=W1ndqPfw8svlFe=J?b|oEz5fAd#Vy@V GCjbCB)<*yU literal 0 HcmV?d00001 diff --git a/LDP/howto/docbook/Secure-Programs-HOWTO/images/program.eps b/LDP/howto/docbook/Secure-Programs-HOWTO/images/program.eps new file mode 100644 index 00000000..1f326d5f --- /dev/null +++ b/LDP/howto/docbook/Secure-Programs-HOWTO/images/program.eps @@ -0,0 +1,436 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: /home/dwheeler/dwheeler.com/secure-programs/program.dia +%%Creator: Dia v0.84 +%%CreationDate: Wed Jan 10 17:15:11 2001 +%%For: a user +%%Magnification: 1.0000 +%%Orientation: Portrait +%%BoundingBox: 0 0 446 395 +%%Pages: 1 +%%BeginSetup +%%EndSetup +%%EndComments +[ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright +/parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one +/two /three /four /five /six /seven /eight /nine /colon /semicolon +/less /equal /greater /question /at /A /B /C /D /E +/F /G /H /I /J /K /L /M /N /O +/P /Q /R /S /T /U /V /W /X /Y +/Z /bracketleft /backslash /bracketright /asciicircum /underscore /quoteleft /a /b /c +/d /e /f /g /h /i /j /k /l /m +/n /o /p /q /r /s /t /u /v /w +/x /y /z /braceleft /bar /braceright /asciitilde /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/space /exclamdown /cent /sterling /currency /yen /brokenbar /section /dieresis /copyright +/ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron /degree /plusminus /twosuperior /threesuperior +/acute /mu /paragraph /periodcentered /cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf +/threequarters /questiondown /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla +/Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis /Eth /Ntilde +/Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply /Oslash /Ugrave /Uacute /Ucircumflex +/Udieresis /Yacute /Thorn /germandbls /agrave /aacute /acircumflex /atilde /adieresis /aring +/ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis +/eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide /oslash /ugrave +/uacute /ucircumflex /udieresis /yacute /thorn /ydieresis] /isolatin1encoding exch def +/Times-Roman-latin1 + /Times-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-Italic-latin1 + /Times-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-Bold-latin1 + /Times-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-BoldItalic-latin1 + /Times-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-Book-latin1 + /AvantGarde-Book findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-BookOblique-latin1 + /AvantGarde-BookOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-Demi-latin1 + /AvantGarde-Demi findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-DemiOblique-latin1 + /AvantGarde-DemiOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-Light-latin1 + /Bookman-Light findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-LightItalic-latin1 + /Bookman-LightItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-Demi-latin1 + /Bookman-Demi findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-DemiItalic-latin1 + /Bookman-DemiItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-latin1 + /Courier findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-Oblique-latin1 + /Courier-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-Bold-latin1 + /Courier-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-BoldOblique-latin1 + /Courier-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-latin1 + /Helvetica findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Oblique-latin1 + /Helvetica-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Bold-latin1 + /Helvetica-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-BoldOblique-latin1 + /Helvetica-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-latin1 + /Helvetica-Narrow findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-Oblique-latin1 + /Helvetica-Narrow-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-Bold-latin1 + /Helvetica-Narrow-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-BoldOblique-latin1 + /Helvetica-Narrow-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Roman-latin1 + /NewCenturySchoolbook-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Italic-latin1 + /NewCenturySchoolbook-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Bold-latin1 + /NewCenturySchoolbook-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-BoldItalic-latin1 + /NewCenturySchoolbook-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Roman-latin1 + /Palatino-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Italic-latin1 + /Palatino-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Bold-latin1 + /Palatino-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-BoldItalic-latin1 + /Palatino-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Symbol-latin1 + /Symbol findfont +definefont pop +/ZapfChancery-MediumItalic-latin1 + /ZapfChancery-MediumItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/ZapfDingbats-latin1 + /ZapfDingbats findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/cp {closepath} bind def +/c {curveto} bind def +/f {fill} bind def +/a {arc} bind def +/ef {eofill} bind def +/ex {exch} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth pop} bind def +/tr {translate} bind def + +/ellipsedict 8 dict def +ellipsedict /mtrx matrix put +/ellipse +{ ellipsedict begin + /endangle exch def + /startangle exch def + /yrad exch def + /xrad exch def + /y exch def + /x exch def /savematrix mtrx currentmatrix def + x y tr xrad yrad sc + 0 0 1 startangle endangle arc + savematrix setmatrix + end +} def + +/colortogray { +/rgbdata exch store +rgbdata length 3 idiv +/npixls exch store +/rgbindx 0 store +0 1 npixls 1 sub { +grays exch +rgbdata rgbindx get 20 mul +rgbdata rgbindx 1 add get 32 mul +rgbdata rgbindx 2 add get 12 mul +add add 64 idiv +put +/rgbindx rgbindx 3 add store +} for +grays 0 npixls getinterval +} bind def +/mergeprocs { +dup length +3 -1 roll +dup +length +dup +5 1 roll +3 -1 roll +add +array cvx +dup +3 -1 roll +0 exch +putinterval +dup +4 2 roll +putinterval +} bind def +/colorimage { +pop pop +{colortogray} mergeprocs +image +} bind def + +28.346000 -28.346000 scale +-0.150000 -16.850000 translate +%%EndProlog + + +1.000000 1.000000 1.000000 srgb +n 4.000000 3.000000 m 4.000000 11.000000 l 12.000000 11.000000 l 12.000000 3.000000 l f +0.100000 slw +[] 0 sd +[] 0 sd +0 slj +0.000000 0.000000 0.000000 srgb +n 4.000000 3.000000 m 4.000000 11.000000 l 12.000000 11.000000 l 12.000000 3.000000 l cp s +/Times-Bold-latin1 ff 1.700000 scf sf +0.000000 0.000000 1.000000 srgb +(Program) dup sw 2 div 8.000000 ex sub 5.000000 m gs 1 -1 sc sh gr +/Times-Roman-latin1 ff 1.000000 scf sf +0.000000 0.000000 0.000000 srgb +(Process Data) dup sw 2 div 8.000000 ex sub 7.000000 m gs 1 -1 sc sh gr +/Times-Roman-latin1 ff 0.650000 scf sf +0.000000 0.000000 0.000000 srgb +(\(Structure Program Internals,) dup sw 2 div 8.000000 ex sub 8.000000 m gs 1 -1 sc sh gr +0.000000 0.000000 0.000000 srgb +(Avoid Buffer Overflow,) dup sw 2 div 8.000000 ex sub 8.650000 m gs 1 -1 sc sh gr +0.000000 0.000000 0.000000 srgb +(Language-Specific Issues, &) dup sw 2 div 8.000000 ex sub 9.300000 m gs 1 -1 sc sh gr +0.000000 0.000000 0.000000 srgb +(Special Topics\)) dup sw 2 div 8.000000 ex sub 9.950000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slc +0.000000 0.000000 0.000000 srgb +n 1.000000 7.000000 m 4.000000 7.000000 l s +0 slj +0.000000 0.000000 0.000000 srgb +n 3.200000 7.400000 m 4.000000 7.000000 l 3.200000 6.600000 l f +/Times-Roman-latin1 ff 1.000000 scf sf +0.000000 0.000000 0.000000 srgb +(Input) dup sw 2 div 2.000000 ex sub 6.000000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slc +0.000000 0.000000 0.000000 srgb +n 12.000000 7.000000 m 15.000000 7.000000 l s +0 slj +0.000000 0.000000 0.000000 srgb +n 14.200000 7.400000 m 15.000000 7.000000 l 14.200000 6.600000 l f +/Times-Roman-latin1 ff 1.000000 scf sf +0.000000 0.000000 0.000000 srgb +(Output) dup sw 2 div 14.000000 ex sub 6.000000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slc +0.000000 0.000000 0.000000 srgb +n 8.000000 11.000000 m 8.000000 16.000000 l s +0 slj +0.000000 0.000000 0.000000 srgb +n 8.400000 11.800000 m 8.000000 11.000000 l 7.600000 11.800000 l f +0 slj +0.000000 0.000000 0.000000 srgb +n 7.600000 15.200000 m 8.000000 16.000000 l 8.400000 15.200000 l f +/Times-Roman-latin1 ff 1.000000 scf sf +0.000000 0.000000 0.000000 srgb +(Call-out to) 9.000000 13.050000 m gs 1 -1 sc sh gr +0.000000 0.000000 0.000000 srgb +(other) 9.000000 14.050000 m gs 1 -1 sc sh gr +0.000000 0.000000 0.000000 srgb +(programs) 9.000000 15.050000 m gs 1 -1 sc sh gr +showpage diff --git a/LDP/howto/docbook/Secure-Programs-HOWTO/images/program.gif b/LDP/howto/docbook/Secure-Programs-HOWTO/images/program.gif new file mode 100644 index 0000000000000000000000000000000000000000..aa295b95c18e79e521128adab87f69b5e3eecf81 GIT binary patch literal 3131 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 VluEgjOxcu9`IJx@mG_YV06W>z4HN(X literal 0 HcmV?d00001 diff --git a/LDP/howto/docbook/Secure-Programs-HOWTO/images/program.png b/LDP/howto/docbook/Secure-Programs-HOWTO/images/program.png new file mode 100644 index 0000000000000000000000000000000000000000..90745ba5f77234ec700373c653a0b36b253570b4 GIT binary patch literal 4038 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 literal 0 HcmV?d00001