NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/55179: ipfilter ip_state.c's problem



The following reply was made to PR kern/55179; it has been noted by GNATS.

From: Christos Zoulas <christos%zoulas.com@localhost>
To: Kouichi Hashikawa <hashikaw%mail.ru@localhost>
Cc: gnats-bugs%netbsd.org@localhost,
 kern-bug-people%netbsd.org@localhost,
 gnats-admin%netbsd.org@localhost,
 netbsd-bugs%netbsd.org@localhost
Subject: Re: kern/55179: ipfilter ip_state.c's problem
Date: Sat, 18 Apr 2020 13:03:47 -0400

 --Apple-Mail=_E0EC186C-1253-4CDE-874B-32FE8B433C4D
 Content-Type: multipart/alternative;
 	boundary="Apple-Mail=_206AB399-EB41-4E53-A2E5-B7F864DF6CE6"
 
 
 --Apple-Mail=_206AB399-EB41-4E53-A2E5-B7F864DF6CE6
 Content-Transfer-Encoding: quoted-printable
 Content-Type: text/plain;
 	charset=utf-8
 
 I think this is correct: sp, dp are in network byte order and so is:
 % fgrep is_sport\ =3D *.c
 ip_state.c:             is->is_sport =3D htons(fin->fin_data[0]);
 ip_state.c:             is->is_sport =3D htons(fin->fin_data[0]);
 ip_state.c:                             is->is_sport =3D sp;
 ip_state.c:                             is->is_sport =3D dp;
 
 I fixed the inconsistency the the tcp !=3D NULL case, but that's =
 cosmetic.
 
 christos
 
 
 
 
 > On Apr 17, 2020, at 8:04 PM, Kouichi Hashikawa <hashikaw%mail.ru@localhost> =
 wrote:
 >=20
 >=20
 >=20
 > Sorry, the reason I think this is a problem, comparing same value =
 (is->is_sport or is->dport) to
 >=20
 > sp (htons) or dp (ntohs).
 >=20
 >=20
 >=20
 > --------
 >=20
 >         if (tcp !=3D NULL) {
 >                 sp =3D htons(fin->fin_sport);
 >                 dp =3D ntohs(fin->fin_dport);
 >         }
 >=20
 > =E2=80=A6
 >=20
 >         /*
 >          * Match addresses and ports.
 >          */
 >         if (rev =3D=3D 0) {
 >                 if ((IP6_EQ(&is->is_dst, dst) || (flags & SI_W_DADDR)) =
 &&
 >                     (IP6_EQ(&is->is_src, src) || (flags & =
 SI_W_SADDR))) {
 >=20
 >                         if (tcp) {
 >                                 if ((sp =3D=3D is->is_sport || flags & =
 SI_W_SPORT)                 <-------
 >                                     &&
 >                                     (dp =3D=3D is->is_dport || flags & =
 SI_W_DPORT))                <-------
 >                                         ret =3D 1;
 >=20
 >                         } else {
 >                                 ret =3D 1;
 >                         }
 >                 }
 >         } else {
 >                 if ((IP6_EQ(&is->is_dst, src) || (flags & SI_W_DADDR)) =
 &&
 >                     (IP6_EQ(&is->is_src, dst) || (flags & =
 SI_W_SADDR))) {
 >                         if (tcp) {
 >                                 if ((dp =3D=3D is->is_sport || flags & =
 SI_W_SPORT)                <-------
 >                                     &&
 >                                     (sp =3D=3D is->is_dport || flags & =
 SI_W_DPORT))                <-------
 >                                         ret =3D 1;
 >                         } else {
 >                                 ret =3D 1;
 >                         }
 >                 }
 >         }
 >=20
 >  --------
 >=20
 >=20
 >=20
 >=20
 >=20
 > Wednesday, April 15, 2020 7:20 PM +09:00 from gnats-admin%netbsd.org@localhost:
 > Thank you very much for your problem report.
 > It has the internal identification `kern/55179'.
 > The individual assigned to look at your
 > report is: kern-bug-people.
 >=20
 >=20
 > >Category: kern
 > >Responsible: kern-bug-people
 > >Synopsis: ipfilter ip_state.c's problem
 > >Arrival-Date: Wed Apr 15 10:20:00 +0000 2020
 >=20
 >=20
 >=20
 >=20
 >=20
 >=20
 >=20
 > --
 > Kouichi Hashikawa <hashikaw%mail.ru@localhost>
 >=20
 >=20
 >=20
 >=20
 >=20
 >=20
 > <sanitizer.log>
 
 
 --Apple-Mail=_206AB399-EB41-4E53-A2E5-B7F864DF6CE6
 Content-Transfer-Encoding: quoted-printable
 Content-Type: text/html;
 	charset=utf-8
 
 <html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
 charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
 -webkit-nbsp-mode: space; line-break: after-white-space;" class=3D"">I =
 think this is correct: sp, dp are in network byte order and so is:<div =
 class=3D"">% fgrep is_sport\ =3D *.c</div><div class=3D"">ip_state.c: =
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; is-&gt;is_sport =3D =
 htons(fin-&gt;fin_data[0]);<div class=3D"">ip_state.c: &nbsp; &nbsp; =
 &nbsp; &nbsp; &nbsp; &nbsp; is-&gt;is_sport =3D =
 htons(fin-&gt;fin_data[0]);</div><div class=3D"">ip_state.c: &nbsp; =
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
 &nbsp; &nbsp; &nbsp; is-&gt;is_sport =3D sp;</div><div =
 class=3D"">ip_state.c: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; is-&gt;is_sport =3D =
 dp;</div><div class=3D""><br class=3D""></div><div class=3D"">I fixed =
 the inconsistency the the tcp !=3D NULL case, but that's =
 cosmetic.</div><div class=3D""><br class=3D""></div><div =
 class=3D"">christos</div><div class=3D""><br class=3D""></div><div =
 class=3D""><br class=3D""></div><div class=3D""><br =
 class=3D""></div><div><br class=3D""><blockquote type=3D"cite" =
 class=3D""><div class=3D"">On Apr 17, 2020, at 8:04 PM, Kouichi =
 Hashikawa &lt;<a href=3D"mailto:hashikaw%mail.ru@localhost"; =
 class=3D"">hashikaw%mail.ru@localhost</a>&gt; wrote:</div><br =
 class=3D"Apple-interchange-newline"><div class=3D"">
 <div class=3D""><p class=3D""><defanged_div =
 class=3D""></defanged_div></p><p class=3D""><defanged_div =
 class=3D"">&nbsp;</defanged_div></p><defanged_div class=3D""><p =
 class=3D""><defanged_div class=3D"">Sorry, the reason I think this is a =
 problem, comparing same value (is-&gt;is_sport or is-&gt;dport) =
 to</defanged_div></p><defanged_div class=3D""><p class=3D""><defanged_div =
 class=3D"">sp (htons) or dp (ntohs).</defanged_div></p><defanged_div =
 class=3D""><p class=3D""><defanged_div =
 class=3D"">&nbsp;</defanged_div></p><defanged_div class=3D""><p =
 class=3D""><defanged_div =
 class=3D"">--------</defanged_div></p><defanged_div class=3D""><p =
 class=3D""><defanged_div class=3D""></defanged_div></p><p =
 class=3D""><defanged_div =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (tcp !=3D NULL) =
 {<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp; sp =3D htons(fin-&gt;fin_sport);<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp; dp =3D ntohs(fin-&gt;fin_dport);<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
 }</defanged_div></p><defanged_div class=3D""><p class=3D""><defanged_div =
 class=3D"">=E2=80=A6</defanged_div></p><defanged_div class=3D""><p =
 class=3D""><defanged_div class=3D""></defanged_div></p><p =
 class=3D""><defanged_div =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * Match =
 addresses and ports.<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; */<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (rev =3D=3D 0) =
 {<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp; if ((IP6_EQ(&amp;is-&gt;is_dst, dst) || =
 (flags &amp; SI_W_DADDR)) &amp;&amp;<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
 (IP6_EQ(&amp;is-&gt;is_src, src) || (flags &amp; SI_W_SADDR))) =
 {</defanged_div></p><defanged_div class=3D""><p class=3D""><defanged_div =
 class=3D""></defanged_div></p><p class=3D""><defanged_div =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ; if (tcp) {<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ((sp =3D=3D =
 is-&gt;is_sport || flags &amp; SI_W_SPORT)&nbsp; &nbsp; &nbsp; &nbsp; =
 &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &lt;-------<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
 &amp;&amp;<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
 (dp =3D=3D is-&gt;is_dport || flags &amp; SI_W_DPORT)) &nbsp; &nbsp; =
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &lt;-------<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
 nbsp;&nbsp;&nbsp;&nbsp; ret =3D 1;</defanged_div></p><defanged_div =
 class=3D""><p class=3D""><defanged_div class=3D""></defanged_div></p><p =
 class=3D""><defanged_div =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ; } else {<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ret =3D 1;<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ; }<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp; }<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else {<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp; if ((IP6_EQ(&amp;is-&gt;is_dst, src) || =
 (flags &amp; SI_W_DADDR)) &amp;&amp;<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
 (IP6_EQ(&amp;is-&gt;is_src, dst) || (flags &amp; SI_W_SADDR))) {<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ; if (tcp) {<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ((dp =3D=3D =
 is-&gt;is_sport || flags &amp; SI_W_SPORT) &nbsp; &nbsp; &nbsp; &nbsp; =
 &nbsp; &nbsp; &nbsp;&nbsp; &lt;-------<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
 &amp;&amp;<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
 (sp =3D=3D is-&gt;is_dport || flags &amp; SI_W_DPORT)) &nbsp; &nbsp; =
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &lt;-------<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
 nbsp;&nbsp;&nbsp;&nbsp; ret =3D 1;<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ; } else {<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ret =3D 1;<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
 ; }<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
 sp;&nbsp;&nbsp;&nbsp;&nbsp; }<br =
 class=3D"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
 }</defanged_div></p><defanged_div class=3D""><p class=3D""><defanged_div =
 class=3D"">&nbsp;--------</defanged_div></p><defanged_div class=3D""><div =
 class=3D""><br class=3D"webkit-block-placeholder"></div><defanged_div =
 class=3D""><div class=3D""><br =
 class=3D"webkit-block-placeholder"></div><defanged_div class=3D""><div =
 class=3D""><br class=3D"webkit-block-placeholder"></div><defanged_div =
 class=3D""><div class=3D""><br =
 class=3D"webkit-block-placeholder"></div><defanged_div =
 class=3D""><blockquote data-darkreader-inline-border-left=3D"" =
 defanged_style=3D"border-left: 1px solid rgb(8, 87, 166); margin: 10px; =
 padding: 0px 0px 0px 10px; --darkreader-inline-border-left:#0a6cce;" =
 class=3D"">Wednesday, April 15, 2020 7:20 PM +09:00 from <a =
 href=3D"mailto:gnats-admin%netbsd.org@localhost"; =
 class=3D"">gnats-admin%netbsd.org@localhost</a>:<br class=3D""><p =
 class=3D""><defanged_div id=3D"" class=3D""></defanged_div></p><p =
 class=3D""><defanged_div class=3D"js-helper =
 js-readmsg-msg"><defanged_style type=3D"text/css" =
 class=3D""></defanged_style><defanged_style class=3D"darkreader =
 darkreader--sync" media=3D"screen" =
 type=3D"text/css"></defanged_style></defanged_div></p><p =
 class=3D""><defanged_div class=3D""></defanged_div></p><p =
 class=3D""><defanged_div id=3D"style_15869460051008274250_BODY" =
 class=3D"">Thank you very much for your problem report.<br class=3D"">It =
 has the internal identification `kern/55179'.<br class=3D"">The =
 individual assigned to look at your<br class=3D"">report is: =
 kern-bug-people.<br class=3D"">&nbsp;</defanged_div></p><p =
 class=3D""><defanged_div class=3D"mail-quote-collapse">&gt;Category: =
 kern<br class=3D"">&gt;Responsible: kern-bug-people<br =
 class=3D"">&gt;Synopsis: ipfilter ip_state.c's problem<br =
 class=3D"">&gt;Arrival-Date: Wed Apr 15 10:20:00 <defanged_span =
 class=3D"js-phone-number">+0000 =
 2020</defanged_span></defanged_div></p><defanged_div class=3D""><div =
 class=3D""><br class=3D"webkit-block-placeholder"></div><defanged_div =
 class=3D""><div class=3D""><br =
 class=3D"webkit-block-placeholder"></div><defanged_div class=3D""><div =
 class=3D""><br class=3D"webkit-block-placeholder"></div><defanged_div =
 class=3D""><div class=3D""><br =
 class=3D"webkit-block-placeholder"></div><defanged_div =
 class=3D""></defanged_div></defanged_div></defanged_div></defanged_div></d=
 efanged_div></blockquote><p class=3D""><defanged_div =
 class=3D"">&nbsp;</defanged_div></p><defanged_div class=3D""><p =
 class=3D""><defanged_div data-signature-widget=3D"container" =
 class=3D""></defanged_div></p><p class=3D""><defanged_div =
 data-signature-widget=3D"content" class=3D""></defanged_div></p><p =
 class=3D""><defanged_div class=3D"">--<br class=3D"">Kouichi Hashikawa =
 &lt;<a href=3D"mailto:hashikaw%mail.ru@localhost"; =
 class=3D"">hashikaw%mail.ru@localhost</a>&gt;</defanged_div></p><defanged_div =
 class=3D""><div class=3D""><br =
 class=3D"webkit-block-placeholder"></div><defanged_div class=3D""><div =
 class=3D""><br class=3D"webkit-block-placeholder"></div><defanged_div =
 class=3D""><p class=3D""><defanged_div =
 class=3D"">&nbsp;</defanged_div></p><defanged_div class=3D""><div =
 class=3D""><br class=3D"webkit-block-placeholder"></div><defanged_div =
 class=3D""></defanged_div></defanged_div></defanged_div></defanged_div></d=
 efanged_div></defanged_div></defanged_div></defanged_div></defanged_div></=
 defanged_div></defanged_div></defanged_div></defanged_div></defanged_div><=
 /defanged_div></defanged_div></defanged_div></defanged_div></defanged_div>=
 </defanged_div></defanged_div></div>
 <span =
 id=3D"cid:05CE5A54-6742-4D5F-90FD-A5B537FA78BF@astron.com">&lt;sanitizer.l=
 og&gt;</span></div></blockquote></div><br class=3D""></div></body></html>=
 
 --Apple-Mail=_206AB399-EB41-4E53-A2E5-B7F864DF6CE6--
 
 --Apple-Mail=_E0EC186C-1253-4CDE-874B-32FE8B433C4D
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
 	filename=signature.asc
 Content-Type: application/pgp-signature;
 	name=signature.asc
 Content-Description: Message signed with OpenPGP
 
 -----BEGIN PGP SIGNATURE-----
 Comment: GPGTools - http://gpgtools.org
 
 iF0EARECAB0WIQS+BJlbqPkO0MDBdsRxESqxbLM7OgUCXpsy8wAKCRBxESqxbLM7
 OsqFAJ9ufExhBibWE0rzTP9F2EDhT/BSNwCeIT6SUdjY9eCKYI/YfIMjuuyUExY=
 =vfYB
 -----END PGP SIGNATURE-----
 
 --Apple-Mail=_E0EC186C-1253-4CDE-874B-32FE8B433C4D--
 



Home | Main Index | Thread Index | Old Index