~/f/libspf2/RPMS.2017 ~/f/libspf2 ~/f/libspf2 RPMS.2017/libspf2-apidocs-1.2.11-0.0.noarch.rpm RPMS/libspf2-apidocs-1.2.11-0.0.noarch.rpm differ: byte 225, line 1 Comparing libspf2-apidocs-1.2.11-0.0.noarch.rpm to libspf2-apidocs-1.2.11-0.0.noarch.rpm comparing the rpm tags of libspf2-apidocs --- old-rpm-tags +++ new-rpm-tags @@ -78 +78,2 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00002_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00002_a5987e5e245a33593a85e594d24326de3_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00002_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -80 +81 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00003.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00004.png 2 (none) 100644 root root 0 4294967295 @@ -82 +82,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00005_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -84 +83,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00006.png 2 (none) 100644 root root 0 4294967295 @@ -86 +85,8 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00008_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a12f1759a708ae16b782e86406ce3c683_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a4be188439efe765c664a1e04c750f23f_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a5330cf664d7629a5829f923b4134bd09_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a72c1c640c73eb590c202b2e116a89012_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a87e5107c8283addb06163244828a373e_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -88,0 +95 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00010.png 2 (none) 100644 root root 0 4294967295 @@ -89,0 +97,4 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00011_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00011_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00011_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00011_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -91,0 +103 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00013.png 2 (none) 100644 root root 0 4294967295 @@ -92,0 +105,4 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00014_a6896a665d70ca1fad208c10a85643949_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00014_a8aa1aeca4c20146c2f27132c02b359a8_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00014_af74d07e90d7d9641f5a7ba22422e2b74_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00014_afc3ca6390afd845fea81d506cba43460_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -93,0 +110 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00015.png 2 (none) 100644 root root 0 4294967295 @@ -95,0 +113,5 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00017_a031db01ec15327ce45da35d4495bd57a_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a56126c078ad970b8868c6422be5d7339_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a87f0543d5a62057272b9c71a332a53f0_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00017_aa9339ddf5e3a508af67836913c7ba009_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -100,4 +121,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00020_a6896a665d70ca1fad208c10a85643949_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00020_a8aa1aeca4c20146c2f27132c02b359a8_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00020_af74d07e90d7d9641f5a7ba22422e2b74_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00020_afc3ca6390afd845fea81d506cba43460_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -105 +122,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00021.png 2 (none) 100644 root root 0 4294967295 @@ -108,0 +126 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00025.png 2 (none) 100644 root root 0 4294967295 @@ -110 +128,3 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00026_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00026_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00026_ac6060857bbd9aafeb41ac938439dc995_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00026_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -118,5 +137,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00032_a031db01ec15327ce45da35d4495bd57a_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a56126c078ad970b8868c6422be5d7339_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a87f0543d5a62057272b9c71a332a53f0_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00032_aa9339ddf5e3a508af67836913c7ba009_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -127,8 +142 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00035_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a12f1759a708ae16b782e86406ce3c683_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a4be188439efe765c664a1e04c750f23f_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a5330cf664d7629a5829f923b4134bd09_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a72c1c640c73eb590c202b2e116a89012_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a87e5107c8283addb06163244828a373e_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00035_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -146,4 +153,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00044_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00044_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00044_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00044_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -153,0 +158 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00047_aba233de6dbc888a571b25b2de1fad440_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -154,0 +160 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00048.png 2 (none) 100644 root root 0 4294967295 @@ -156,0 +163,6 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00050_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a23e3070faf833397247973356e044092_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a974873aedf7fada6e6efbe79b7b16ea3_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_ab2d1a6a0420741ad6c0e0014682c8ffd_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -161,0 +174 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00054.png 2 (none) 100644 root root 0 4294967295 @@ -165 +177,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00057.png 2 (none) 100644 root root 0 4294967295 @@ -168 +179,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00059_aba233de6dbc888a571b25b2de1fad440_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -170,2 +180,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00060.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00061.png 2 (none) 100644 root root 0 4294967295 @@ -173,0 +183 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00063.png 2 (none) 100644 root root 0 4294967295 @@ -175,2 +185 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00065_a5987e5e245a33593a85e594d24326de3_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00065_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00065_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -178 +187 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00067.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00066.png 2 (none) 100644 root root 0 4294967295 @@ -180,3 +188,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00068_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00068_ac6060857bbd9aafeb41ac938439dc995_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00068_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -185 +190,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00070.png 2 (none) 100644 root root 0 4294967295 @@ -187,4 +191,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00071_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a23e3070faf833397247973356e044092_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -192 +192,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00071_ab2d1a6a0420741ad6c0e0014682c8ffd_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -195 +194,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00073.png 2 (none) 100644 root root 0 4294967295 @@ -196,0 +196,4 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00074_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00074_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00074_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00074_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -197,0 +201 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00075.png 2 (none) 100644 root root 0 4294967295 @@ -199 +203 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00077_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00077_aba233de6dbc888a571b25b2de1fad440_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -203,4 +207,4 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00080_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00080_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00080_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00080_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00080_a496d32ee6858ed297b8de6c51489fa9c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00080_a5879ae9b2e5c671cb9c8a86dbec36f05_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00080_aa38a61fe15bfe400cf8fbd929333a5a1_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00080_aa78b4eddc6533ffc5d74f9bbe974f6a8_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -209,0 +214 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00083_a23e3070faf833397247973356e044092_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -215,0 +221,5 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00089_a031db01ec15327ce45da35d4495bd57a_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a56126c078ad970b8868c6422be5d7339_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a87f0543d5a62057272b9c71a332a53f0_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00089_aa9339ddf5e3a508af67836913c7ba009_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -216,0 +227 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00090.png 2 (none) 100644 root root 0 4294967295 @@ -221 +231,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00095_a974873aedf7fada6e6efbe79b7b16ea3_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -228 +238,2 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00101_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00101_a5987e5e245a33593a85e594d24326de3_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00101_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -232,4 +243 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00104_a496d32ee6858ed297b8de6c51489fa9c_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00104_a5879ae9b2e5c671cb9c8a86dbec36f05_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00104_aa38a61fe15bfe400cf8fbd929333a5a1_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00104_aa78b4eddc6533ffc5d74f9bbe974f6a8_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00104_a72c1c640c73eb590c202b2e116a89012_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -239,7 +246,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00107_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a12f1759a708ae16b782e86406ce3c683_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a4be188439efe765c664a1e04c750f23f_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a5330cf664d7629a5829f923b4134bd09_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a87e5107c8283addb06163244828a373e_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -249 +250,3 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00110_a72c1c640c73eb590c202b2e116a89012_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00110_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00110_ac6060857bbd9aafeb41ac938439dc995_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00110_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -253 +255,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00113_a23e3070faf833397247973356e044092_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -255 +256,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00114.png 2 (none) 100644 root root 0 4294967295 @@ -256,0 +258 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00116_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -259,0 +262 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00119_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -266 +269,7 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00125_aba233de6dbc888a571b25b2de1fad440_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a12f1759a708ae16b782e86406ce3c683_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a4be188439efe765c664a1e04c750f23f_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a5330cf664d7629a5829f923b4134bd09_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a87e5107c8283addb06163244828a373e_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -270,2 +279 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00128_a5987e5e245a33593a85e594d24326de3_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00128_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00128_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -278,0 +287 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00134_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -282,3 +290,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00137_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00137_ac6060857bbd9aafeb41ac938439dc995_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00137_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -288 +293,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00140_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -292,5 +296,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00143_a031db01ec15327ce45da35d4495bd57a_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a56126c078ad970b8868c6422be5d7339_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a87f0543d5a62057272b9c71a332a53f0_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00143_aa9339ddf5e3a508af67836913c7ba009_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -298 +297,0 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00144.png 2 (none) 100644 root root 0 4294967295 @@ -300 +299 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00146_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00146_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -303,0 +303 @@ +/usr/share/doc/packages/spf2-apidocs/html/a00149_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 @@ -435,66 +435,74 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00002.html f6cc2198f17711062cb892f1e91b5ec8f4a3ef1cd9eeb2cc29554e079537f087 2 -/usr/share/doc/packages/spf2-apidocs/html/a00002_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 8a91abfcee56137a8dd34b1285736f748b732be35d5c7681a84df7a032fdefaf 2 -/usr/share/doc/packages/spf2-apidocs/html/a00002_source.html 0b1d5ac1fba8f5722d61e7592eb016536363bee1463b10d6fa60f73ce3887520 2 -/usr/share/doc/packages/spf2-apidocs/html/a00003.png 2187cc51a3ad09c0f4114502229855575b8c498cd241a89da29e66c8064854c6 2 -/usr/share/doc/packages/spf2-apidocs/html/a00005.html 7d797ded35f18883ebb7c850e86fa6a9ba048d452a9b354128fdd1369667ade4 2 -/usr/share/doc/packages/spf2-apidocs/html/a00005_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 287ece7d13e6e5c13719dd9833f4af888478e004271c1b9d475c1fcc2a3055da 2 -/usr/share/doc/packages/spf2-apidocs/html/a00005_source.html 039323fab76cf9e8f0a52fe5896e6dfe33b1456c386f2f3fc9bf8688982ace7b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00006.png b24c66c576f94cfd1f4da7e3bb43cbb928059445ef24436d590793ccf5887a42 2 -/usr/share/doc/packages/spf2-apidocs/html/a00008.html 7843c7c01186a155618a2c2dc8bdf91ff9ff5d85d8e8a730eb09b0c1b84f1d0a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00008_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 0381b391d7ac875439716a5f24d7c4df7fc775cc1176d86bb81f39fc74afbfcf 2 -/usr/share/doc/packages/spf2-apidocs/html/a00008_source.html e022b7e84a1f2f617e3e13f09f961a85bc8ee3b6ce1946f483a602c82c5f222e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00009.png 95668cdc1b25935bfda7d3c8446782975c005a64b6195c15b012956c88d5f132 2 -/usr/share/doc/packages/spf2-apidocs/html/a00011.html 6822d1cd42b65765b560138235cfd27ef26b279e09ed47402506039b750a39f5 2 -/usr/share/doc/packages/spf2-apidocs/html/a00011_source.html 94696edb0b90431b6df2d35b77539c75445f91d4772ea64b999becce0ace6e81 2 -/usr/share/doc/packages/spf2-apidocs/html/a00012.png 43fd9f521cde3606da1d0f836648160f16708877516a8ce683cf3058d9fe7ba0 2 -/usr/share/doc/packages/spf2-apidocs/html/a00014.html f32c36d30072f3351e730e601704ae13bd8b729ab619ff32a054d7528a3bdca7 2 -/usr/share/doc/packages/spf2-apidocs/html/a00014_source.html e11f56077ead1875d54734430d027ccfd46d2ce445d4d5ff9517cd3365ca9f8a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00016.png eb7086a93b12d182b0a96211eaf5bc52dc253a52967e4343ffe53ac167f66f90 2 -/usr/share/doc/packages/spf2-apidocs/html/a00017.html 9c030108b1b9154a9b13b8612a617fa9913efcb3846d2085c9722330d5e8c401 2 -/usr/share/doc/packages/spf2-apidocs/html/a00017_source.html efb6ba55e0d86f0df24ea6e2c2eb1063ee51023ff94773a9b4fbf07a966bd60a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00018.png c2a50f2b7dd5ffcec11e139204e74bdd36061d1d8735054e34c9e1c6ef3cbdfc 2 -/usr/share/doc/packages/spf2-apidocs/html/a00019.png 9f8fe310ff85320658522bac645766bb09df1b109dfbd3687d9a86d29f5b4840 2 -/usr/share/doc/packages/spf2-apidocs/html/a00020.html 2bedb19806ad2faa7c1d5fd51b6e17e2fd804a6a5e0057f51cc32b6d2d0ed0b7 2 -/usr/share/doc/packages/spf2-apidocs/html/a00020_a6896a665d70ca1fad208c10a85643949_cgraph.png 6b68e534022e96e96e5c3136ec9a4fc094c2d324a57fd4e852a8554811c08b4c 2 -/usr/share/doc/packages/spf2-apidocs/html/a00020_a8aa1aeca4c20146c2f27132c02b359a8_cgraph.png bde504cef87f8191e78730be42c8c5ac76a05483882c3a5c6b81ccfa110edcaf 2 -/usr/share/doc/packages/spf2-apidocs/html/a00020_af74d07e90d7d9641f5a7ba22422e2b74_cgraph.png 445695cb55b2da59d9c93fd10b51eb9342e64b67d932eff3b5e929b7604b9b87 2 -/usr/share/doc/packages/spf2-apidocs/html/a00020_afc3ca6390afd845fea81d506cba43460_cgraph.png 69442ef736c0b4cf66a4d570d1d5b56867f84bcea3bd682cf13a4740a13fd100 2 -/usr/share/doc/packages/spf2-apidocs/html/a00020_source.html 4fbb2b4fc5f7ac43fec5d93f4cc2614fb2c7afd1d3fbe3183eed19fc0afd903f 2 -/usr/share/doc/packages/spf2-apidocs/html/a00021.png c94f71d110706867482751ba9f983114e923fe12606335ecf1ee39e433f6896c 2 -/usr/share/doc/packages/spf2-apidocs/html/a00022.png f2d4d0b1ad57c6fb95b785edf02ae08ff70cad9f8ee9d8a6bf8352a9309f8c6f 2 -/usr/share/doc/packages/spf2-apidocs/html/a00023.html 77e6976afb45850313c470e054503d8227f17087a498d85671c60030c2dd26f8 2 -/usr/share/doc/packages/spf2-apidocs/html/a00023_source.html 8ccc17704f32ce9f067fb87f8cef4ba0eccea1a4c15f56ad1fb12661aad461a5 2 -/usr/share/doc/packages/spf2-apidocs/html/a00026.html a11ed3be24a4b3736badba79b7b9a148735369897f1d418538d7410360f6df99 2 -/usr/share/doc/packages/spf2-apidocs/html/a00026_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 540baa17100d810440fd809d940094ba2bd8bf91369f679495c33b4072f64369 2 -/usr/share/doc/packages/spf2-apidocs/html/a00026_source.html 6f6574fe0a5112d21365ebdc2e7d794dad23d695ac2b06c279b18da8a91e75ca 2 -/usr/share/doc/packages/spf2-apidocs/html/a00027.png 6328dd76243fb7eea62d7f4f63967a18f457c6fc56eea6a6459e5ed28fa711e3 2 -/usr/share/doc/packages/spf2-apidocs/html/a00028.png 9cdb666f40d42c7a0c326475c0a40667fc0a73f4743ff412254227a6f67781f5 2 -/usr/share/doc/packages/spf2-apidocs/html/a00029.html 81a39ab971dc6c031585921b88b631bb94a95eb645ddf3b8f005aecbc6edc5b7 2 -/usr/share/doc/packages/spf2-apidocs/html/a00029_source.html 6ba4259a0d77f713c574072eb5d48b78ba5a965204a936b2b410d8ba47ab73d7 2 -/usr/share/doc/packages/spf2-apidocs/html/a00031.png e37b53ed43e4831b7dff6c838cc7bcd5b4d9cf997162df4aa0629dd0e3f5fe06 2 -/usr/share/doc/packages/spf2-apidocs/html/a00032.html 90699180320dc8b97bed019e8e6e492bcb16b5847feedfa84d5d2ecff69f8dfb 2 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a031db01ec15327ce45da35d4495bd57a_cgraph.png 0349796658f07f1e07df67cb6045570da00baa66a5ee0dbd0a9bee2d7f85bb42 2 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a56126c078ad970b8868c6422be5d7339_cgraph.png fd7d0449fd2e916ba5744a4e3ffc6d53667337f5e303b248a206170c71038c91 2 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a87f0543d5a62057272b9c71a332a53f0_cgraph.png e97643a3eaf478f252abd8f2e1956408df25d5f4e88f87c8df602e43f5035c2a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 4b2308ecb19a8918bc030be44cc1cd553e6b05103bc158cb8f5860aaaa9d6d39 2 -/usr/share/doc/packages/spf2-apidocs/html/a00032_aa9339ddf5e3a508af67836913c7ba009_cgraph.png bf8577ae19ec01f500b9b0dfadcf021c3d1ac2cadcae117874172433bb0c02fc 2 -/usr/share/doc/packages/spf2-apidocs/html/a00032_source.html 0a25471f8ae079ebd2e3f2281e2858cb21f83cfc606aff502356dda52eb7ec60 2 -/usr/share/doc/packages/spf2-apidocs/html/a00033.png e19fbb951b0ce74ea12a05036e33ac3250472c23f05202c6b0304537b84e2ab6 2 -/usr/share/doc/packages/spf2-apidocs/html/a00034.png eb30ba06e5ad30bec874550578cbc2a799fc2c94062832441136bc4f75af2b5d 2 -/usr/share/doc/packages/spf2-apidocs/html/a00035.html 982ee55fb90c223f174df97b7b100b3b5d66a3936a0c1ca69ba03cd5c0d90e27 2 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png bc109ad40e95e744de527343e79d188cd9a41bebb224210b6f929fc2c65342ee 2 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a12f1759a708ae16b782e86406ce3c683_cgraph.png 22f59013d5917f752f5d0c19af9097a87096e4809b6bcb8b1269954608200cd9 2 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a4be188439efe765c664a1e04c750f23f_cgraph.png 11097748923a7044ad1b0d92c7e8bbcb778b9166b2dbb0e594ded8a002c61560 2 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a5330cf664d7629a5829f923b4134bd09_cgraph.png 4601bc5d9173610a568f8d3daf5cd1b71845207e15b1b2eb7ecabfb28eba60fe 2 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a72c1c640c73eb590c202b2e116a89012_cgraph.png c28277e6a834f98628663361ad23175a0862c6bb9c0945700d90a36829e8163a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a87e5107c8283addb06163244828a373e_cgraph.png 7e083f2691bb8ab53c6a0127f723424b167aa22ea4d284269d32da497281e254 2 -/usr/share/doc/packages/spf2-apidocs/html/a00035_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png af98704181f96ef090a090b543cac3e4ba3df87227994a81657efe8b86b0e6a2 2 -/usr/share/doc/packages/spf2-apidocs/html/a00035_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png c367b9905a4ca24189c0d15a6910f9e91e01bcdd29de07677509f43e380c15b4 2 -/usr/share/doc/packages/spf2-apidocs/html/a00035_source.html e0b7911e151c92cdd1cec4735b0b8147e57d2c2f4d0c7de875f91275082caacd 2 -/usr/share/doc/packages/spf2-apidocs/html/a00036.png 4871f9d7d995f176e52665b34cce9b00ba2d90202b5842eb4ee5bd1d426cf5fe 2 -/usr/share/doc/packages/spf2-apidocs/html/a00037.png 3529bf123ed4f776fea29fe14b4ecce84dec90f8fde3ece39b62dfac8251d92a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00038.html 9d99a4b0605141e3c4ae2614f4c2aa9bd040632c7b26879f17cc05eea62aa32e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00038_source.html 706b1ccf9f6e6768792e92f21badbcfb4d4df4327930337aba06af11c1449ccf 2 -/usr/share/doc/packages/spf2-apidocs/html/a00040.png e4b4017913c5d2cf0082c6c35617afc03943b41088ad89f4fa98f186ddc3fee7 2 -/usr/share/doc/packages/spf2-apidocs/html/a00041.html 757c731e067a99dcad6f3ff9d07e0b810ae9488f2147bf9dd11a8db3ce2a7be1 2 -/usr/share/doc/packages/spf2-apidocs/html/a00041_source.html 45dfb2237b7e3651d9136785dfbb374b82946faac04777ce01b0113ebb065db9 2 +/usr/share/doc/packages/spf2-apidocs/html/a00002.html e4c2273025329b12df0c3fbc9a27def918a6c7929d2f3c5970cb9508a32cbcc0 2 +/usr/share/doc/packages/spf2-apidocs/html/a00002_a5987e5e245a33593a85e594d24326de3_cgraph.png 2fd304223695c9e69a4e0b70d20d2c36211aad5cc4907acc61d70c278fbe599e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00002_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 0745e1af026953b1005ee70b5eeb904a3a8f597aa721b32ba1e2e8a8f778928b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00002_source.html 80dd0e6cc228a5e681f7f14b58dd7e8cdfaa359630cfaba129470c761d76b5f4 2 +/usr/share/doc/packages/spf2-apidocs/html/a00004.png b8aae8178ee060df04da341326f289069184dd9ea866e4b2ee32269e32dbc9b4 2 +/usr/share/doc/packages/spf2-apidocs/html/a00005.html 5f168a484ded66f0c41258bee0c71db1beb918651a8efdac00372b79446aba8f 2 +/usr/share/doc/packages/spf2-apidocs/html/a00005_source.html 41139082e957e9dabf3b606ed06bafa110187b9821a896f55a881cd17ed409d9 2 +/usr/share/doc/packages/spf2-apidocs/html/a00008.html 60a8fa929a2ec3c1dc6b44f8ced6378ecddab7517a7fbd6aa9c0585972711664 2 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png bc109ad40e95e744de527343e79d188cd9a41bebb224210b6f929fc2c65342ee 2 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a12f1759a708ae16b782e86406ce3c683_cgraph.png 22f59013d5917f752f5d0c19af9097a87096e4809b6bcb8b1269954608200cd9 2 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a4be188439efe765c664a1e04c750f23f_cgraph.png 11097748923a7044ad1b0d92c7e8bbcb778b9166b2dbb0e594ded8a002c61560 2 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a5330cf664d7629a5829f923b4134bd09_cgraph.png 4601bc5d9173610a568f8d3daf5cd1b71845207e15b1b2eb7ecabfb28eba60fe 2 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a72c1c640c73eb590c202b2e116a89012_cgraph.png c28277e6a834f98628663361ad23175a0862c6bb9c0945700d90a36829e8163a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a87e5107c8283addb06163244828a373e_cgraph.png 7e083f2691bb8ab53c6a0127f723424b167aa22ea4d284269d32da497281e254 2 +/usr/share/doc/packages/spf2-apidocs/html/a00008_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png af98704181f96ef090a090b543cac3e4ba3df87227994a81657efe8b86b0e6a2 2 +/usr/share/doc/packages/spf2-apidocs/html/a00008_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png c367b9905a4ca24189c0d15a6910f9e91e01bcdd29de07677509f43e380c15b4 2 +/usr/share/doc/packages/spf2-apidocs/html/a00008_source.html 8a7639fb8d890c99b1382bc9fda4cc8ed8ae90d3bb46ae171106768dc5eb4f36 2 +/usr/share/doc/packages/spf2-apidocs/html/a00009.png 4871f9d7d995f176e52665b34cce9b00ba2d90202b5842eb4ee5bd1d426cf5fe 2 +/usr/share/doc/packages/spf2-apidocs/html/a00010.png 3529bf123ed4f776fea29fe14b4ecce84dec90f8fde3ece39b62dfac8251d92a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00011.html b97bcc2c49bd05db487a3c280752f1ddbd275d1061c525e21aab604b20e79cea 2 +/usr/share/doc/packages/spf2-apidocs/html/a00011_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 11c764da84c2e6063d5350a1409a963325033dba760c70d73b8ee4740bf4e931 2 +/usr/share/doc/packages/spf2-apidocs/html/a00011_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2d0dc00ccd11b3db70110ec09016ed8331e8b76d604301798f70993d25804d5a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00011_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 3cb56e643def066dd60e5538c58a77f463e46d9df1608a37e6e317337fec8c7b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00011_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png dc61c2f3584238dd3c81a0007ae8361f0960438c2a1399dbf257fd3b32e40d9b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00011_source.html aa996de9e87a84466270826a607e7dd03545517ed095462225fedf780f64ea49 2 +/usr/share/doc/packages/spf2-apidocs/html/a00012.png e8bc9fc0c6794cec0eb107b5d0d4481851e0ca134ba9afa2526b31590bee0c0c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00013.png 7702e979658f38c98fb0a12cb70b9e1a4e9587489dea189dc789c766da6f8a97 2 +/usr/share/doc/packages/spf2-apidocs/html/a00014.html e9130981d333170c751c75c0c471aa7ccd32fa4ba4c871a66cfdecc76ec126b8 2 +/usr/share/doc/packages/spf2-apidocs/html/a00014_a6896a665d70ca1fad208c10a85643949_cgraph.png 6b68e534022e96e96e5c3136ec9a4fc094c2d324a57fd4e852a8554811c08b4c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00014_a8aa1aeca4c20146c2f27132c02b359a8_cgraph.png bde504cef87f8191e78730be42c8c5ac76a05483882c3a5c6b81ccfa110edcaf 2 +/usr/share/doc/packages/spf2-apidocs/html/a00014_af74d07e90d7d9641f5a7ba22422e2b74_cgraph.png 445695cb55b2da59d9c93fd10b51eb9342e64b67d932eff3b5e929b7604b9b87 2 +/usr/share/doc/packages/spf2-apidocs/html/a00014_afc3ca6390afd845fea81d506cba43460_cgraph.png 69442ef736c0b4cf66a4d570d1d5b56867f84bcea3bd682cf13a4740a13fd100 2 +/usr/share/doc/packages/spf2-apidocs/html/a00014_source.html ae86b6fcd420c82bffa5aeae6a91fda648ed949f22f8cbaef6f014e6c0dde897 2 +/usr/share/doc/packages/spf2-apidocs/html/a00015.png c94f71d110706867482751ba9f983114e923fe12606335ecf1ee39e433f6896c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00016.png f2d4d0b1ad57c6fb95b785edf02ae08ff70cad9f8ee9d8a6bf8352a9309f8c6f 2 +/usr/share/doc/packages/spf2-apidocs/html/a00017.html 61e71871be5a3777e5592d72c412bb90ccb820fe94509b7bf7ebaf977068f1bd 2 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a031db01ec15327ce45da35d4495bd57a_cgraph.png 0349796658f07f1e07df67cb6045570da00baa66a5ee0dbd0a9bee2d7f85bb42 2 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a56126c078ad970b8868c6422be5d7339_cgraph.png fd7d0449fd2e916ba5744a4e3ffc6d53667337f5e303b248a206170c71038c91 2 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a87f0543d5a62057272b9c71a332a53f0_cgraph.png e97643a3eaf478f252abd8f2e1956408df25d5f4e88f87c8df602e43f5035c2a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 4b2308ecb19a8918bc030be44cc1cd553e6b05103bc158cb8f5860aaaa9d6d39 2 +/usr/share/doc/packages/spf2-apidocs/html/a00017_aa9339ddf5e3a508af67836913c7ba009_cgraph.png bf8577ae19ec01f500b9b0dfadcf021c3d1ac2cadcae117874172433bb0c02fc 2 +/usr/share/doc/packages/spf2-apidocs/html/a00017_source.html f18f98c36779ac3a1e569f82c1cb0ec6475252a776b064655452bc146d5d94f6 2 +/usr/share/doc/packages/spf2-apidocs/html/a00018.png e19fbb951b0ce74ea12a05036e33ac3250472c23f05202c6b0304537b84e2ab6 2 +/usr/share/doc/packages/spf2-apidocs/html/a00019.png eb30ba06e5ad30bec874550578cbc2a799fc2c94062832441136bc4f75af2b5d 2 +/usr/share/doc/packages/spf2-apidocs/html/a00020.html 4b412ee784af3b6273274f3130f5ecfc1b4ddee9a14dd5c607f1729d421a42cf 2 +/usr/share/doc/packages/spf2-apidocs/html/a00020_source.html 3488313e45f3694374bf0bdae3ac87f155660b8c34e482fce03119fa399827fa 2 +/usr/share/doc/packages/spf2-apidocs/html/a00022.png e4b4017913c5d2cf0082c6c35617afc03943b41088ad89f4fa98f186ddc3fee7 2 +/usr/share/doc/packages/spf2-apidocs/html/a00023.html 705f4feed37758dd4def406ac5837e9abe0639ef6f89229e147a11b48891c8bd 2 +/usr/share/doc/packages/spf2-apidocs/html/a00023_source.html e402fc8d482c7bb6280597b790f2f4bd4426f67e8bdf8e3a10b13b2c3b4e400f 2 +/usr/share/doc/packages/spf2-apidocs/html/a00025.png eb7086a93b12d182b0a96211eaf5bc52dc253a52967e4343ffe53ac167f66f90 2 +/usr/share/doc/packages/spf2-apidocs/html/a00026.html 2a3a4bb784475aa7a959f55cca24d2e4418b96c76d495e454a8ba9e27e4b2eb5 2 +/usr/share/doc/packages/spf2-apidocs/html/a00026_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 5c28d0cfed50d5b29ede93b8b5de235294ba288a5bb27131d5e18375b262e90c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00026_ac6060857bbd9aafeb41ac938439dc995_cgraph.png ed7350043f69fc11bd4c1b88fa6e7468f151c1c52b24298f82bdef2effbb027d 2 +/usr/share/doc/packages/spf2-apidocs/html/a00026_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png e1a8e11e31a30ad0a382b86733ffb0e12c09c7ee9ffa02f08ea6c187f8c50ec6 2 +/usr/share/doc/packages/spf2-apidocs/html/a00026_source.html 7a1fd5fad52aa237308767c44410f46db20a22b2b87a41da054d9942c2e5326e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00027.png bb1043f62576bf5bd72e87905cf54c35c654c1708a93ea3a00451c8ad2b17fc0 2 +/usr/share/doc/packages/spf2-apidocs/html/a00028.png b4bfe554778a14d4ac19a8a0ea92a9ffb486cf8271db187cda847321ca9a836f 2 +/usr/share/doc/packages/spf2-apidocs/html/a00029.html 4be227a0a64899c32722eeca9a98bf48f8a84f42e9c83362cd791f27dd10fd0f 2 +/usr/share/doc/packages/spf2-apidocs/html/a00029_source.html cfd26ee1b05ba354878b2beed0eca09c0755d8f6a0eb62952ca331aa10ec8cf8 2 +/usr/share/doc/packages/spf2-apidocs/html/a00031.png 76d1f843e699c842de0b1bcae10f3466b3cb0a9709a25058855a61996f50ced0 2 +/usr/share/doc/packages/spf2-apidocs/html/a00032.html 0d6a23dc8579039c56781fcbafa8178b1a8cb90336aa2ec34e4c0529651bb0b1 2 +/usr/share/doc/packages/spf2-apidocs/html/a00032_source.html 83dfa7ac18ab71240eb0615e471b85e1a25f59224c79bc025ef984daec545784 2 +/usr/share/doc/packages/spf2-apidocs/html/a00033.png fcff0932cd1fa11db5676e4c4117221db82af0ecbf98df58f15079add85ad826 2 +/usr/share/doc/packages/spf2-apidocs/html/a00034.png 3efc42fd58ed5ff3fac5ea4c547ae039400f2430d78339732e8d77baae0a9d51 2 +/usr/share/doc/packages/spf2-apidocs/html/a00035.html 056c12230a098bb9ae56a53c4ebfc63ff8edb24ce825ecbc91f0627d0db3c461 2 +/usr/share/doc/packages/spf2-apidocs/html/a00035_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 540baa17100d810440fd809d940094ba2bd8bf91369f679495c33b4072f64369 2 +/usr/share/doc/packages/spf2-apidocs/html/a00035_source.html afbf84809c227c7cfb5245a0e046e7e29c9cdd1c9d60788ca20b3e68569f654b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00036.png 6328dd76243fb7eea62d7f4f63967a18f457c6fc56eea6a6459e5ed28fa711e3 2 +/usr/share/doc/packages/spf2-apidocs/html/a00037.png 9cdb666f40d42c7a0c326475c0a40667fc0a73f4743ff412254227a6f67781f5 2 +/usr/share/doc/packages/spf2-apidocs/html/a00038.html 4bfffcc4b7f948d588c66c8669b4ec97b885e75c04e2cc0ab0158fb8b1cd13f5 2 +/usr/share/doc/packages/spf2-apidocs/html/a00038_source.html 92ddde0ae89bc5ae5e1d10ac3286860ce690eaa5b705e527841655c80de1e46d 2 +/usr/share/doc/packages/spf2-apidocs/html/a00040.png 86b80a198899df577e6f299be4bdb485d2bd409adbbdf9ee9293519c9966387f 2 +/usr/share/doc/packages/spf2-apidocs/html/a00041.html b4d5cbf4c3523293f65639065ebe431a1ef80ebb24617ef9292e520b54e2f0c2 2 +/usr/share/doc/packages/spf2-apidocs/html/a00041_source.html 5d1ab817e15a119efdb284d9c8d6834ec50a68c11cff4b4aa7db0b2ce3a84a50 2 @@ -503,46 +511,39 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00044.html 75e95a8a189f74352e6ef3cef77b470c25b2c2f40ef3ba3b3e0058d3dd16fd10 2 -/usr/share/doc/packages/spf2-apidocs/html/a00044_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 11c764da84c2e6063d5350a1409a963325033dba760c70d73b8ee4740bf4e931 2 -/usr/share/doc/packages/spf2-apidocs/html/a00044_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2d0dc00ccd11b3db70110ec09016ed8331e8b76d604301798f70993d25804d5a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00044_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 3cb56e643def066dd60e5538c58a77f463e46d9df1608a37e6e317337fec8c7b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00044_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png dc61c2f3584238dd3c81a0007ae8361f0960438c2a1399dbf257fd3b32e40d9b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00044_source.html cfee82ab6c3bbf4560118785d1092dbd77f393b22cce334ec76097ad5215a302 2 -/usr/share/doc/packages/spf2-apidocs/html/a00045.png e8bc9fc0c6794cec0eb107b5d0d4481851e0ca134ba9afa2526b31590bee0c0c 2 -/usr/share/doc/packages/spf2-apidocs/html/a00046.png 7702e979658f38c98fb0a12cb70b9e1a4e9587489dea189dc789c766da6f8a97 2 -/usr/share/doc/packages/spf2-apidocs/html/a00047.html 1630b681cae64be2eebd38f5620dfde088bbb8568931a373b834fb7dbc4d0c8b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00047_source.html 47c14b48b15bddfe85c921854dd451e5a080055a14403fd39a64d3746cb3588c 2 -/usr/share/doc/packages/spf2-apidocs/html/a00049.png 76d1f843e699c842de0b1bcae10f3466b3cb0a9709a25058855a61996f50ced0 2 -/usr/share/doc/packages/spf2-apidocs/html/a00050.html 8714646b89b692ee04406d3a9286fd699345cf19fdbd4b0d6d168d00974e7d66 2 -/usr/share/doc/packages/spf2-apidocs/html/a00050_source.html 95691a674e821d6c351d77de2687513423bdcdf5c1bd34ce7dbe7e705138061b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00051.png ebb2a161ac3465ccb309c6ad6746f2bb18708303c2a380eea3c96f61be6fd0f1 2 -/usr/share/doc/packages/spf2-apidocs/html/a00052.png 4b5de23cf1f515f9cf5c3e777b19d565385e84697c63b02f09003ba27be62109 2 -/usr/share/doc/packages/spf2-apidocs/html/a00053.html 1068408e17245fa6ee11c16407cda506cc26f0af1456abb63fb119ccb3ce49e2 2 -/usr/share/doc/packages/spf2-apidocs/html/a00053_source.html 8c3fae819d18eecbcefcab3bfe91feaed5f0f436bbb40ae0d4491daec656ccb1 2 -/usr/share/doc/packages/spf2-apidocs/html/a00055.png 86b80a198899df577e6f299be4bdb485d2bd409adbbdf9ee9293519c9966387f 2 -/usr/share/doc/packages/spf2-apidocs/html/a00056.html caf7166aa0674e3bf010e906a40c7f25d1227ee733d7be100444728802c743e8 2 -/usr/share/doc/packages/spf2-apidocs/html/a00056_source.html 04a7701a727d236a6534ffc4bf4881c962c7ffbc7407a1c8942ed8ac6950796f 2 -/usr/share/doc/packages/spf2-apidocs/html/a00057.png fcff0932cd1fa11db5676e4c4117221db82af0ecbf98df58f15079add85ad826 2 -/usr/share/doc/packages/spf2-apidocs/html/a00058.png 3efc42fd58ed5ff3fac5ea4c547ae039400f2430d78339732e8d77baae0a9d51 2 -/usr/share/doc/packages/spf2-apidocs/html/a00059.html 6b59ce20eeb8cc6046f57d1a97771a75ba987111c2f4e5a77dfda15fe7572205 2 -/usr/share/doc/packages/spf2-apidocs/html/a00059_aba233de6dbc888a571b25b2de1fad440_cgraph.png 96bcc9018f6d99c92fbc5eb352ad4a9bf2a97a97b2e1e2a19042a7d2e5467619 2 -/usr/share/doc/packages/spf2-apidocs/html/a00059_source.html e75e118ce9bd94719e6c68da102ef8fc0f656b68d5627de23cb52ccc55c613f2 2 -/usr/share/doc/packages/spf2-apidocs/html/a00060.png 879e6c9debf8d606443b02dcfc1449dee123fb3bb81049185909bac7782b513f 2 -/usr/share/doc/packages/spf2-apidocs/html/a00061.png 0f2b2cb75e973e498a25904d25a6722f184e646b0608773e31f0e2f8b98d86b9 2 -/usr/share/doc/packages/spf2-apidocs/html/a00062.html c74da454c5927a8115666f560fa9008e45aad46a1c650df032e8149324d36aba 2 -/usr/share/doc/packages/spf2-apidocs/html/a00062_source.html 122faf2404215ce1c59612c4d44056f40ebb69ca81ec937a4fad0a14c2b5faee 2 -/usr/share/doc/packages/spf2-apidocs/html/a00065.html b95a762008a2696bdb74d0a6f7c469d85804dafe0c0ac93f7c21b8dcc1cb6d41 2 -/usr/share/doc/packages/spf2-apidocs/html/a00065_a5987e5e245a33593a85e594d24326de3_cgraph.png 2fd304223695c9e69a4e0b70d20d2c36211aad5cc4907acc61d70c278fbe599e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00065_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 0745e1af026953b1005ee70b5eeb904a3a8f597aa721b32ba1e2e8a8f778928b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00065_source.html 297bbe7208a09eeb762e4e25c09c06712203916228b00c18f25fb619c24bd248 2 -/usr/share/doc/packages/spf2-apidocs/html/a00067.png b8aae8178ee060df04da341326f289069184dd9ea866e4b2ee32269e32dbc9b4 2 -/usr/share/doc/packages/spf2-apidocs/html/a00068.html 613f94b147bf8f3fa9a97cbabc5f3fb084b631db4df132b8841f37d206c0f6b0 2 -/usr/share/doc/packages/spf2-apidocs/html/a00068_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 5c28d0cfed50d5b29ede93b8b5de235294ba288a5bb27131d5e18375b262e90c 2 -/usr/share/doc/packages/spf2-apidocs/html/a00068_ac6060857bbd9aafeb41ac938439dc995_cgraph.png ed7350043f69fc11bd4c1b88fa6e7468f151c1c52b24298f82bdef2effbb027d 2 -/usr/share/doc/packages/spf2-apidocs/html/a00068_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png e1a8e11e31a30ad0a382b86733ffb0e12c09c7ee9ffa02f08ea6c187f8c50ec6 2 -/usr/share/doc/packages/spf2-apidocs/html/a00068_source.html 1dedd2a862d15a711093dcbd09d6d385e8ab2d5c87898c1e4ad99d4f26f1bf44 2 -/usr/share/doc/packages/spf2-apidocs/html/a00069.png bb1043f62576bf5bd72e87905cf54c35c654c1708a93ea3a00451c8ad2b17fc0 2 -/usr/share/doc/packages/spf2-apidocs/html/a00070.png b4bfe554778a14d4ac19a8a0ea92a9ffb486cf8271db187cda847321ca9a836f 2 -/usr/share/doc/packages/spf2-apidocs/html/a00071.html 8ff54f9553e895d8c3c800d977964ace74fab2de6a8fccb575ae2ec30ed79cbf 2 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 1ef27edfea978b5839cf37d48e9799c8a07f955ac45c379e8d01184a8e575958 2 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a23e3070faf833397247973356e044092_cgraph.png 7b8033d695251f4c89b6068b72b954149c7f4420b828808406ac03d58bd98cf2 2 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 8172abac395fab805f04cef9efafc3fb8603a65caa41d639686d3583496a0a19 2 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 645b00a1f59123b64dd1f48e547b8ae5a68452fcb857d7d450ff5210d3bec3d0 2 +/usr/share/doc/packages/spf2-apidocs/html/a00044.html c42757683cd96f0ded1751840efa9358afad5cfd6cf7b7b2c587019a782efee8 2 +/usr/share/doc/packages/spf2-apidocs/html/a00044_source.html 5a5fd5df8ed6bc86974946888c869d8963a3438376b31a795b2ff2881e8d2427 2 +/usr/share/doc/packages/spf2-apidocs/html/a00045.png c2a50f2b7dd5ffcec11e139204e74bdd36061d1d8735054e34c9e1c6ef3cbdfc 2 +/usr/share/doc/packages/spf2-apidocs/html/a00046.png 9f8fe310ff85320658522bac645766bb09df1b109dfbd3687d9a86d29f5b4840 2 +/usr/share/doc/packages/spf2-apidocs/html/a00047.html 61ecf47878e295b0b268283da6a4e7d7c94da7fe89885684da1d3d62137dafb4 2 +/usr/share/doc/packages/spf2-apidocs/html/a00047_aba233de6dbc888a571b25b2de1fad440_cgraph.png 96bcc9018f6d99c92fbc5eb352ad4a9bf2a97a97b2e1e2a19042a7d2e5467619 2 +/usr/share/doc/packages/spf2-apidocs/html/a00047_source.html 75a069756d00e021cc7a9edba5c0ffd48e4f674f354dc29bf0ccc0cd23b9fdec 2 +/usr/share/doc/packages/spf2-apidocs/html/a00048.png 879e6c9debf8d606443b02dcfc1449dee123fb3bb81049185909bac7782b513f 2 +/usr/share/doc/packages/spf2-apidocs/html/a00049.png 0f2b2cb75e973e498a25904d25a6722f184e646b0608773e31f0e2f8b98d86b9 2 +/usr/share/doc/packages/spf2-apidocs/html/a00050.html 99c590cd0338d9524cf2eb421bfe3794f5bc6fb5391015143b53aa837b37c22a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 1ef27edfea978b5839cf37d48e9799c8a07f955ac45c379e8d01184a8e575958 2 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a23e3070faf833397247973356e044092_cgraph.png 7b8033d695251f4c89b6068b72b954149c7f4420b828808406ac03d58bd98cf2 2 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 8172abac395fab805f04cef9efafc3fb8603a65caa41d639686d3583496a0a19 2 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 645b00a1f59123b64dd1f48e547b8ae5a68452fcb857d7d450ff5210d3bec3d0 2 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a974873aedf7fada6e6efbe79b7b16ea3_cgraph.png 8de20c422bdca28c2f726e4e34f11eaecc031a8049cafb1291d1befefe6f09dd 2 +/usr/share/doc/packages/spf2-apidocs/html/a00050_ab2d1a6a0420741ad6c0e0014682c8ffd_cgraph.png 5a479db663ac7a4f0a5ddcc60cef33b3764e42bb0eaf23c5e2404b3a45e0701d 2 +/usr/share/doc/packages/spf2-apidocs/html/a00050_source.html 2db298e567f81416145082c11090c3b7a2a8f5ad10e6c843da3e5b51941a37cc 2 +/usr/share/doc/packages/spf2-apidocs/html/a00051.png ed75afc597dd29f22d29f2cde33e966dd98210b42270be722dc85bdb42ac827e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00052.png 8849a8912e86985338b40683579b597c3fa3c86ad547dae07d165d66e8717c3e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00053.html 9b88483d1bfc3799f719935751344e130b1c2e3025021bf6f5f0c2fa4daf2809 2 +/usr/share/doc/packages/spf2-apidocs/html/a00053_source.html 3c6fa2a7cd482077e0c42637d7ded2e330a2f7fd3839056ec08bc69de1cbbb73 2 +/usr/share/doc/packages/spf2-apidocs/html/a00054.png ebb2a161ac3465ccb309c6ad6746f2bb18708303c2a380eea3c96f61be6fd0f1 2 +/usr/share/doc/packages/spf2-apidocs/html/a00055.png 4b5de23cf1f515f9cf5c3e777b19d565385e84697c63b02f09003ba27be62109 2 +/usr/share/doc/packages/spf2-apidocs/html/a00056.html c087c4eb71b6b833c07b2a4301a292addfd940c068c90ada55bb54801839e14c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00056_source.html 22a1179def196532e3349b663acdcb6141da09e269849378fa4ce10084157491 2 +/usr/share/doc/packages/spf2-apidocs/html/a00058.png e37b53ed43e4831b7dff6c838cc7bcd5b4d9cf997162df4aa0629dd0e3f5fe06 2 +/usr/share/doc/packages/spf2-apidocs/html/a00059.html 3c70b9f887fa19d965c53da76cc54afa15216f8512a47061dc44aef86cca021e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00059_source.html faaef93bd43ac55e7bc37c615ea331dbf02bdc4ba49d21871b96c6d115dfb84b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00062.html fc6acb40f9626392e7f1291c5f96a586217996a4a1b7b200281b5a496a0df537 2 +/usr/share/doc/packages/spf2-apidocs/html/a00062_source.html ba909d264eac2ad330f89bb310e7d8cbbb95abdd84eb5c00ba818aa5918d39f6 2 +/usr/share/doc/packages/spf2-apidocs/html/a00063.png 43fd9f521cde3606da1d0f836648160f16708877516a8ce683cf3058d9fe7ba0 2 +/usr/share/doc/packages/spf2-apidocs/html/a00065.html 4cc2da4858641cd4c638406aeece7a40b30ce7e0646dae89b1bf5f9df1ad9ccf 2 +/usr/share/doc/packages/spf2-apidocs/html/a00065_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 0381b391d7ac875439716a5f24d7c4df7fc775cc1176d86bb81f39fc74afbfcf 2 +/usr/share/doc/packages/spf2-apidocs/html/a00065_source.html fdef01f9c7cd61f4801ff229cdc8b667ba6d527fdbe0e48bd4024a3e79fe1d9d 2 +/usr/share/doc/packages/spf2-apidocs/html/a00066.png 95668cdc1b25935bfda7d3c8446782975c005a64b6195c15b012956c88d5f132 2 +/usr/share/doc/packages/spf2-apidocs/html/a00068.html b7e4da3920eaa172c80f0dad7dc3b7cc8d577c0c3d150df2d9cf8b79f3f0062b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00068_source.html 4d137179a13ac26f990be7662793715a6167e2d506e71ad5d6dbf44ed1e355fb 2 +/usr/share/doc/packages/spf2-apidocs/html/a00069.png 0605e5c9e5c96afd9ed397c4e867307408a65c029dd4d5606dbff833005a52ab 2 +/usr/share/doc/packages/spf2-apidocs/html/a00071.html 09f0805e8c571efbd3cddec0477c81e8f7ac77bfec579e59667608c86a200b0b 2 @@ -550,72 +551,74 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00071_ab2d1a6a0420741ad6c0e0014682c8ffd_cgraph.png 5a479db663ac7a4f0a5ddcc60cef33b3764e42bb0eaf23c5e2404b3a45e0701d 2 -/usr/share/doc/packages/spf2-apidocs/html/a00071_source.html b26caa1173eaa38e68ef7ffb4dc021a13b80c0a8eaac1718b2ec9b013fc7cb35 2 -/usr/share/doc/packages/spf2-apidocs/html/a00072.png ed75afc597dd29f22d29f2cde33e966dd98210b42270be722dc85bdb42ac827e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00073.png 8849a8912e86985338b40683579b597c3fa3c86ad547dae07d165d66e8717c3e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00074.html 16613dcaac9e74be9de6dc968c9fcef16b0b2b299ddbdf3815ed56a0eef4ebd1 2 -/usr/share/doc/packages/spf2-apidocs/html/a00074_source.html c01121cab527f54a6a614193d9f8604623fd870af395ed5375976cf58639846d 2 -/usr/share/doc/packages/spf2-apidocs/html/a00077.html 755f0a6f6d4fea666d3c46bb2bc8caaa0b4a696a2bf9b42098f30ce31ea5748e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00077_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 645b00a1f59123b64dd1f48e547b8ae5a68452fcb857d7d450ff5210d3bec3d0 2 -/usr/share/doc/packages/spf2-apidocs/html/a00077_source.html ff3ffebacd65ef077b28020c3b288db0903bbf3cd18c7b4f8f61fbdce15e6d34 2 -/usr/share/doc/packages/spf2-apidocs/html/a00078.png dd423e5392cd154f1cb37d192ae2447cbd03e73f886ce34d2c37af7c38cbe42a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00080.html fcde19f36ae052b273d2a35f265e5f0eb4d094a4251c5b2ae7dbb5123bc8dd7e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00080_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 11c764da84c2e6063d5350a1409a963325033dba760c70d73b8ee4740bf4e931 2 -/usr/share/doc/packages/spf2-apidocs/html/a00080_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2d0dc00ccd11b3db70110ec09016ed8331e8b76d604301798f70993d25804d5a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00080_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 3cb56e643def066dd60e5538c58a77f463e46d9df1608a37e6e317337fec8c7b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00080_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png dc61c2f3584238dd3c81a0007ae8361f0960438c2a1399dbf257fd3b32e40d9b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00080_source.html 52515b4caeb4968c481ab58620fab670e7262a4c4e129b9d6c63cd41ccb0e4fb 2 -/usr/share/doc/packages/spf2-apidocs/html/a00081.png 9b5e8f0eb465ee09e3cb4432e907d3bb44db93a9ca079ea6d1490b2284bcbfe4 2 -/usr/share/doc/packages/spf2-apidocs/html/a00083.html d3dd798210dbab7832df8bf0205f1cc10280b2aba0a1a92e55f913625a82cc79 2 -/usr/share/doc/packages/spf2-apidocs/html/a00083_source.html 2f8835477f920b45ccc9d07fc37088de5b13c220ce84ae96bcee2237e3e187ad 2 -/usr/share/doc/packages/spf2-apidocs/html/a00084.png 74d9175ac6917fc070434ec8335725ed5b2136f7636ae23643424a7c4ea17352 2 -/usr/share/doc/packages/spf2-apidocs/html/a00086.html 848675b384b18e1ee4c2f34e18e0e015dee280dca807344ff84ba6e918df5183 2 -/usr/share/doc/packages/spf2-apidocs/html/a00086_source.html dcce0f71dcc22af8504cd6647b941a71a2862db4623467172a9aa5e1d0851924 2 -/usr/share/doc/packages/spf2-apidocs/html/a00087.png 5d8c9d4be06cf5739ca38d2d543e305a80064a16b3e96a66382e2204a567bba7 2 -/usr/share/doc/packages/spf2-apidocs/html/a00089.html 17c8c2cb632795596f92bbc038625d2654a8d95f4fae74c2094a0233202d6b98 2 -/usr/share/doc/packages/spf2-apidocs/html/a00089_source.html 7cce7417f774e1f22b77f23efd762c467ab68b486d54aed16f808d631e7bea39 2 -/usr/share/doc/packages/spf2-apidocs/html/a00092.html 76586df005b87d92223254ac87104ef6e8d5fe9d41156d3ccbcc0771559e9c2d 2 -/usr/share/doc/packages/spf2-apidocs/html/a00092_source.html 23516fd273aba67684c71ac984167964fb27899374b28ad41c0398826372ad67 2 -/usr/share/doc/packages/spf2-apidocs/html/a00093.png 4c37130631f4fc5c04638f370be3afc7feef6b55b87623f11bbc40125285493e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00095.html 42adef5df45bf761c9a263127813500d99b4003c628c509805d5d5c9018bd9e3 2 -/usr/share/doc/packages/spf2-apidocs/html/a00095_a974873aedf7fada6e6efbe79b7b16ea3_cgraph.png 8de20c422bdca28c2f726e4e34f11eaecc031a8049cafb1291d1befefe6f09dd 2 -/usr/share/doc/packages/spf2-apidocs/html/a00095_source.html 886182092c9453d1100a3d4dd17c525b0422d71e3a50bc9a049b0a3972873cc5 2 -/usr/share/doc/packages/spf2-apidocs/html/a00096.png d462c2a395cbc913cfc298d026ac623899974ccbef2fbc4d4e93849349538bde 2 -/usr/share/doc/packages/spf2-apidocs/html/a00098.html 58639aa523131d2e8db8449c511e67795329b29105f3c6d5c17b3e1125579da1 2 -/usr/share/doc/packages/spf2-apidocs/html/a00098_source.html b87030cdfba9f0afe63c3358bda7bf0a1012002f980efbcf911a82447b4bc615 2 -/usr/share/doc/packages/spf2-apidocs/html/a00099.png 48430e89b976186d651fa8e62f6effae0ef1dde4ecfbb402dfc11649dcc1be97 2 -/usr/share/doc/packages/spf2-apidocs/html/a00101.html d7eabee72192e5b3ddad0f619b900b43322cff2e2f984e263be1af6bc579dc69 2 -/usr/share/doc/packages/spf2-apidocs/html/a00101_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 540baa17100d810440fd809d940094ba2bd8bf91369f679495c33b4072f64369 2 -/usr/share/doc/packages/spf2-apidocs/html/a00101_source.html ebf1f8a699b5603086880b1e78be72ed3c4018ec587391d5036394b30d81a8c2 2 -/usr/share/doc/packages/spf2-apidocs/html/a00102.png 8d442b478f2bb449e3e382308469aa223489b42fb586fc71dafa347b5e8fb6fd 2 -/usr/share/doc/packages/spf2-apidocs/html/a00104.html 576a2bf30b830db5a113f57534d896cf47e0307c13b12ffa31ef9dd98f3938c6 2 -/usr/share/doc/packages/spf2-apidocs/html/a00104_a496d32ee6858ed297b8de6c51489fa9c_cgraph.png bde504cef87f8191e78730be42c8c5ac76a05483882c3a5c6b81ccfa110edcaf 2 -/usr/share/doc/packages/spf2-apidocs/html/a00104_a5879ae9b2e5c671cb9c8a86dbec36f05_cgraph.png 445695cb55b2da59d9c93fd10b51eb9342e64b67d932eff3b5e929b7604b9b87 2 -/usr/share/doc/packages/spf2-apidocs/html/a00104_aa38a61fe15bfe400cf8fbd929333a5a1_cgraph.png 69442ef736c0b4cf66a4d570d1d5b56867f84bcea3bd682cf13a4740a13fd100 2 -/usr/share/doc/packages/spf2-apidocs/html/a00104_aa78b4eddc6533ffc5d74f9bbe974f6a8_cgraph.png 6b68e534022e96e96e5c3136ec9a4fc094c2d324a57fd4e852a8554811c08b4c 2 -/usr/share/doc/packages/spf2-apidocs/html/a00104_source.html a977866a56693c2c683577c74817a832b7c5b91d4d9f5c5734e7694e32b7ad64 2 -/usr/share/doc/packages/spf2-apidocs/html/a00105.png 828d48860bce73cbb00c25ebdf8c54cf24734290163f9ee55008fe0c5ec3ff0d 2 -/usr/share/doc/packages/spf2-apidocs/html/a00107.html b2e03bf951ac855e66222653a9532fd43c643ac69e45d1708b0c484e8d4d0de4 2 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png bc109ad40e95e744de527343e79d188cd9a41bebb224210b6f929fc2c65342ee 2 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a12f1759a708ae16b782e86406ce3c683_cgraph.png 22f59013d5917f752f5d0c19af9097a87096e4809b6bcb8b1269954608200cd9 2 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a4be188439efe765c664a1e04c750f23f_cgraph.png 11097748923a7044ad1b0d92c7e8bbcb778b9166b2dbb0e594ded8a002c61560 2 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a5330cf664d7629a5829f923b4134bd09_cgraph.png 4601bc5d9173610a568f8d3daf5cd1b71845207e15b1b2eb7ecabfb28eba60fe 2 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a87e5107c8283addb06163244828a373e_cgraph.png 7e083f2691bb8ab53c6a0127f723424b167aa22ea4d284269d32da497281e254 2 -/usr/share/doc/packages/spf2-apidocs/html/a00107_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png af98704181f96ef090a090b543cac3e4ba3df87227994a81657efe8b86b0e6a2 2 -/usr/share/doc/packages/spf2-apidocs/html/a00107_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png c367b9905a4ca24189c0d15a6910f9e91e01bcdd29de07677509f43e380c15b4 2 -/usr/share/doc/packages/spf2-apidocs/html/a00107_source.html 894af91a2262ea28a0fdad18740281ad203b200e7108b2a3818a76024146010b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00108.png 62652426deaf2a996c05644511eda6f64d7ce13c25a5107931a386ed6f29fd20 2 -/usr/share/doc/packages/spf2-apidocs/html/a00110.html 389165898dcb9857f27ee9d3fe00cec903a9009979d3e441fb3f4ca9ce96e902 2 -/usr/share/doc/packages/spf2-apidocs/html/a00110_a72c1c640c73eb590c202b2e116a89012_cgraph.png c28277e6a834f98628663361ad23175a0862c6bb9c0945700d90a36829e8163a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00110_source.html 06076361094fc26614d5179be025238f117413591d3d62eff489474678fe8a34 2 -/usr/share/doc/packages/spf2-apidocs/html/a00111.png 27cc9f341218214982db208f408fe11b404181728d86a212b89e1470f5fcf5ce 2 -/usr/share/doc/packages/spf2-apidocs/html/a00113.html a1a9b98aeff2c94c5e86dd9e6b6dd8f809df9bec88964fc89b19a413e16e2d66 2 -/usr/share/doc/packages/spf2-apidocs/html/a00113_a23e3070faf833397247973356e044092_cgraph.png 7b8033d695251f4c89b6068b72b954149c7f4420b828808406ac03d58bd98cf2 2 -/usr/share/doc/packages/spf2-apidocs/html/a00113_source.html a8adea1aed085dd083106b6cc88cffdedf99ea74d060910ec6a7d831d17e8cad 2 -/usr/share/doc/packages/spf2-apidocs/html/a00114.png f1fcbf576f5db8c135f2909f96c15fdd2b7ce4e4fa75f464ef47f06e2e9e48ca 2 -/usr/share/doc/packages/spf2-apidocs/html/a00116.html ba77eaf43a94e432b1e4281686b112f81a80739ca3881589d552ae13ab4044dc 2 -/usr/share/doc/packages/spf2-apidocs/html/a00116_source.html 73ad50f4a4fc81e4d90f273cc0a579711c1a79b9e3aa30fbca5c2efa732431e1 2 -/usr/share/doc/packages/spf2-apidocs/html/a00117.png 04ba1e040a4bb6a87e442b14d9309a5453e864a16fe785afd184beec4dbe71b9 2 -/usr/share/doc/packages/spf2-apidocs/html/a00119.html 84e14c6c4842535d016f0ce11f524fcfefdce83eba52bfc64ccf8d7ff0fa18bf 2 -/usr/share/doc/packages/spf2-apidocs/html/a00119_source.html 8668efae76e2fa9ef15f90ca5f961df330cfc32d16fea3f4834c1c6459c96614 2 -/usr/share/doc/packages/spf2-apidocs/html/a00120.png 205f7a229e5a7024be37716684491f96f1e552c0de18e51dbaf74adbfdafd4e4 2 -/usr/share/doc/packages/spf2-apidocs/html/a00122.html 7ed63d27de7dd9918bb39f034d63a1c00ee5b5090bca1934d9c1ab384b8f038c 2 -/usr/share/doc/packages/spf2-apidocs/html/a00122_source.html b5c0b14cfcaa8eed792aa0d0505e7ac0ff7066c04c5dd61ed42e3b89f7f350dc 2 +/usr/share/doc/packages/spf2-apidocs/html/a00071_source.html 121dba4e87bc3367479695c6621249242a66be576d41df6de818db61bb58d29e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00072.png d462c2a395cbc913cfc298d026ac623899974ccbef2fbc4d4e93849349538bde 2 +/usr/share/doc/packages/spf2-apidocs/html/a00074.html 23007ceb48664d23bc177bc731a830a7ea1dc23257b1ac545bde1444770d1351 2 +/usr/share/doc/packages/spf2-apidocs/html/a00074_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 11c764da84c2e6063d5350a1409a963325033dba760c70d73b8ee4740bf4e931 2 +/usr/share/doc/packages/spf2-apidocs/html/a00074_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2d0dc00ccd11b3db70110ec09016ed8331e8b76d604301798f70993d25804d5a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00074_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 3cb56e643def066dd60e5538c58a77f463e46d9df1608a37e6e317337fec8c7b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00074_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png dc61c2f3584238dd3c81a0007ae8361f0960438c2a1399dbf257fd3b32e40d9b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00074_source.html 541c82a91cce98b3c9c9180bf3ede019d750530c8e347168b4610ebcc3ab613e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00075.png 9b5e8f0eb465ee09e3cb4432e907d3bb44db93a9ca079ea6d1490b2284bcbfe4 2 +/usr/share/doc/packages/spf2-apidocs/html/a00077.html 5f1ed6c0a9cd5a284278476b6fb6ec79abb2796f6e135b2f7f16d0439caa3d9c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00077_aba233de6dbc888a571b25b2de1fad440_cgraph.png 96bcc9018f6d99c92fbc5eb352ad4a9bf2a97a97b2e1e2a19042a7d2e5467619 2 +/usr/share/doc/packages/spf2-apidocs/html/a00077_source.html 8eda122f14774c08dbb38d6e1bdcf273bbe7b06d95af508a5f0681da30c26940 2 +/usr/share/doc/packages/spf2-apidocs/html/a00078.png 6cbd9c329f1231c1cac0c1935c338fe863d4dc7c49c1c9b75b1e6e1a0eddd6e5 2 +/usr/share/doc/packages/spf2-apidocs/html/a00080.html b6f91cb413d04b7e7b4c2bef9fe894013aecf150bc4c14aa0f1bf05a7077c7f7 2 +/usr/share/doc/packages/spf2-apidocs/html/a00080_a496d32ee6858ed297b8de6c51489fa9c_cgraph.png bde504cef87f8191e78730be42c8c5ac76a05483882c3a5c6b81ccfa110edcaf 2 +/usr/share/doc/packages/spf2-apidocs/html/a00080_a5879ae9b2e5c671cb9c8a86dbec36f05_cgraph.png 445695cb55b2da59d9c93fd10b51eb9342e64b67d932eff3b5e929b7604b9b87 2 +/usr/share/doc/packages/spf2-apidocs/html/a00080_aa38a61fe15bfe400cf8fbd929333a5a1_cgraph.png 69442ef736c0b4cf66a4d570d1d5b56867f84bcea3bd682cf13a4740a13fd100 2 +/usr/share/doc/packages/spf2-apidocs/html/a00080_aa78b4eddc6533ffc5d74f9bbe974f6a8_cgraph.png 6b68e534022e96e96e5c3136ec9a4fc094c2d324a57fd4e852a8554811c08b4c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00080_source.html 8ce6a8bfe928014dc38109441ea2f79c3be41bf7d754b013af905372ffa6175d 2 +/usr/share/doc/packages/spf2-apidocs/html/a00081.png 828d48860bce73cbb00c25ebdf8c54cf24734290163f9ee55008fe0c5ec3ff0d 2 +/usr/share/doc/packages/spf2-apidocs/html/a00083.html d39b95751b924823265688d9fdc85135353afeab51f08684d9ab217df2a93549 2 +/usr/share/doc/packages/spf2-apidocs/html/a00083_a23e3070faf833397247973356e044092_cgraph.png 7b8033d695251f4c89b6068b72b954149c7f4420b828808406ac03d58bd98cf2 2 +/usr/share/doc/packages/spf2-apidocs/html/a00083_source.html 299221c3ebd98586f34eb7c028b4948184213f09f8a64492292d42c787b46bad 2 +/usr/share/doc/packages/spf2-apidocs/html/a00084.png f1fcbf576f5db8c135f2909f96c15fdd2b7ce4e4fa75f464ef47f06e2e9e48ca 2 +/usr/share/doc/packages/spf2-apidocs/html/a00086.html cf593e9ceb6fe7073db29cd8e65b9a909fecbe074d685dae2ebaa9b0fb60c9ac 2 +/usr/share/doc/packages/spf2-apidocs/html/a00086_source.html 9175420b0dcb107dd9722378e627ef94839e70cb8c81a14a6b30293b4fe44a5b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00087.png 205f7a229e5a7024be37716684491f96f1e552c0de18e51dbaf74adbfdafd4e4 2 +/usr/share/doc/packages/spf2-apidocs/html/a00089.html 5b82a33d42cf6b66dbf91cfb9be1e2060004d0d1cd908279a1fd3fb0b8b9000b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a031db01ec15327ce45da35d4495bd57a_cgraph.png 0349796658f07f1e07df67cb6045570da00baa66a5ee0dbd0a9bee2d7f85bb42 2 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a56126c078ad970b8868c6422be5d7339_cgraph.png fd7d0449fd2e916ba5744a4e3ffc6d53667337f5e303b248a206170c71038c91 2 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a87f0543d5a62057272b9c71a332a53f0_cgraph.png e97643a3eaf478f252abd8f2e1956408df25d5f4e88f87c8df602e43f5035c2a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 4b2308ecb19a8918bc030be44cc1cd553e6b05103bc158cb8f5860aaaa9d6d39 2 +/usr/share/doc/packages/spf2-apidocs/html/a00089_aa9339ddf5e3a508af67836913c7ba009_cgraph.png bf8577ae19ec01f500b9b0dfadcf021c3d1ac2cadcae117874172433bb0c02fc 2 +/usr/share/doc/packages/spf2-apidocs/html/a00089_source.html f456ef7f1dbf35d8029c95060a3f4eab3b111eb8c9dbd74262b8939b9ef505af 2 +/usr/share/doc/packages/spf2-apidocs/html/a00090.png a3a37db8198bbf70f6d8330dd32fb568e9722e9e40b7887bd5141b624e5ac754 2 +/usr/share/doc/packages/spf2-apidocs/html/a00092.html 02bd0816665c9b0982e91bd31ae16b4ad1ec14a0d1802e93a2dc0de9a77a5dba 2 +/usr/share/doc/packages/spf2-apidocs/html/a00092_source.html 9c6dd6939dd00468d9b85cb9de7d4f9b9ee1bc928d692a6f593cce25b05f5a0c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00093.png 5d8c9d4be06cf5739ca38d2d543e305a80064a16b3e96a66382e2204a567bba7 2 +/usr/share/doc/packages/spf2-apidocs/html/a00095.html c7e689014dec039866598241716ef4973a895832eea3150b2834cb561068ced7 2 +/usr/share/doc/packages/spf2-apidocs/html/a00095_source.html 34ecb7b27a0f9943313846fa89765d7090f054254544e4da40b7b7c636864aaa 2 +/usr/share/doc/packages/spf2-apidocs/html/a00096.png 4c37130631f4fc5c04638f370be3afc7feef6b55b87623f11bbc40125285493e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00098.html ddb18dd0da973f8dc4372512bdc7bedcbdb50136605fd4042e77c09422f9bde6 2 +/usr/share/doc/packages/spf2-apidocs/html/a00098_source.html 7c0840170fd7f5b56e88d9b809dc7466877ee0917f451d7eee49d1f06b744c04 2 +/usr/share/doc/packages/spf2-apidocs/html/a00099.png 04ba1e040a4bb6a87e442b14d9309a5453e864a16fe785afd184beec4dbe71b9 2 +/usr/share/doc/packages/spf2-apidocs/html/a00101.html 01306e582a61ddd5401ee421d13569a1e5ceb6a83d32e08222d7fdfac5d2ce37 2 +/usr/share/doc/packages/spf2-apidocs/html/a00101_a5987e5e245a33593a85e594d24326de3_cgraph.png 2fd304223695c9e69a4e0b70d20d2c36211aad5cc4907acc61d70c278fbe599e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00101_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 0745e1af026953b1005ee70b5eeb904a3a8f597aa721b32ba1e2e8a8f778928b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00101_source.html 9bcf10cc44a89f628b2a7f6ae82b6c1bd668d0b40f7a18390e1e23d1e250a79b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00102.png 648d4087f90b7142bf63f0053f148c80497cf8e78fa5c74fdfbe6a45ca3a71ae 2 +/usr/share/doc/packages/spf2-apidocs/html/a00104.html 693d7c0f28bfc46e6a530cca4836fa29a874c30bbe4200046ae88905f2ec71ca 2 +/usr/share/doc/packages/spf2-apidocs/html/a00104_a72c1c640c73eb590c202b2e116a89012_cgraph.png c28277e6a834f98628663361ad23175a0862c6bb9c0945700d90a36829e8163a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00104_source.html 63e3157a973028751ea99fe1aae26eb3bebc1391e53cc8ee4a7645ebe771904b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00105.png 27cc9f341218214982db208f408fe11b404181728d86a212b89e1470f5fcf5ce 2 +/usr/share/doc/packages/spf2-apidocs/html/a00107.html 6f8ad26baa857b858fd267b477c161ddfd8fbceb5374b463a9bc424f20dc13d6 2 +/usr/share/doc/packages/spf2-apidocs/html/a00107_source.html cf4e4563317ec1f8f840b64b6955f149bc9dc1df4d59540d7ccfa5d1d2c099d2 2 +/usr/share/doc/packages/spf2-apidocs/html/a00108.png 74d9175ac6917fc070434ec8335725ed5b2136f7636ae23643424a7c4ea17352 2 +/usr/share/doc/packages/spf2-apidocs/html/a00110.html afe7beeed180dd5fff3585bf3237ab4173f1445d6a02d58460c28d1432dccfb5 2 +/usr/share/doc/packages/spf2-apidocs/html/a00110_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 5c28d0cfed50d5b29ede93b8b5de235294ba288a5bb27131d5e18375b262e90c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00110_ac6060857bbd9aafeb41ac938439dc995_cgraph.png ed7350043f69fc11bd4c1b88fa6e7468f151c1c52b24298f82bdef2effbb027d 2 +/usr/share/doc/packages/spf2-apidocs/html/a00110_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png e1a8e11e31a30ad0a382b86733ffb0e12c09c7ee9ffa02f08ea6c187f8c50ec6 2 +/usr/share/doc/packages/spf2-apidocs/html/a00110_source.html 6daf2be09bfcd87395dd98feb2da2f0fbfc0a29a206721946039996fa31507f3 2 +/usr/share/doc/packages/spf2-apidocs/html/a00111.png 6dee2eadb9482f2149ae83cf64d14605ca32150d1c0e69ac1de2d832acdb2269 2 +/usr/share/doc/packages/spf2-apidocs/html/a00113.html 8ce5f533a59487436d4256a225d32cbfdbff0ca7c081e3f4a8496b46fca03e4a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00113_source.html 8e326709a71154da94a746f3d8dee533f07a7d9cb94c354cede8acadd138f1cb 2 +/usr/share/doc/packages/spf2-apidocs/html/a00116.html 05e3b0614702b45bb902f8799b0d1bbd5c779f7c69eeeaa32c93f73366de9d5a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00116_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 540baa17100d810440fd809d940094ba2bd8bf91369f679495c33b4072f64369 2 +/usr/share/doc/packages/spf2-apidocs/html/a00116_source.html 9fdc3281e2e32cffdb4e40b1fec978e95d657a211cc25baaf79c093cd5e88aae 2 +/usr/share/doc/packages/spf2-apidocs/html/a00117.png 8d442b478f2bb449e3e382308469aa223489b42fb586fc71dafa347b5e8fb6fd 2 +/usr/share/doc/packages/spf2-apidocs/html/a00119.html 050a565d792b3d9568f13adc8c5f7b6486edededb60bc9feeaf8eee850a9fe91 2 +/usr/share/doc/packages/spf2-apidocs/html/a00119_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 8172abac395fab805f04cef9efafc3fb8603a65caa41d639686d3583496a0a19 2 +/usr/share/doc/packages/spf2-apidocs/html/a00119_source.html 6edad2a928e481394c7c80dd2c78a8b8eee89aa4cc33877f191a64cbb02cd477 2 +/usr/share/doc/packages/spf2-apidocs/html/a00120.png 1a3bf1b8118bd93f08fd24bc291ff0f6081f37426c9d09c6b699f2b9faa8802e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00122.html 1c78a1c9cc26c8713bd324967ae9002d5b2ca3207724a8f3e563c0fed3af1769 2 +/usr/share/doc/packages/spf2-apidocs/html/a00122_source.html 48e92b42c7d89c279a05071a8ef4a248971267721c48a6e298956a97ec0256e7 2 @@ -623,10 +626,15 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00125.html 44dfc1ef27c47ecd9b35bf64a67655f8c6d0dacb0ee9c649961da223c1455b78 2 -/usr/share/doc/packages/spf2-apidocs/html/a00125_aba233de6dbc888a571b25b2de1fad440_cgraph.png 96bcc9018f6d99c92fbc5eb352ad4a9bf2a97a97b2e1e2a19042a7d2e5467619 2 -/usr/share/doc/packages/spf2-apidocs/html/a00125_source.html 337a80ff70ae499d623b6a6e9bfe8aa4ffbd0ff4a32c4b41e7b3f3d3e01c9dda 2 -/usr/share/doc/packages/spf2-apidocs/html/a00126.png 6cbd9c329f1231c1cac0c1935c338fe863d4dc7c49c1c9b75b1e6e1a0eddd6e5 2 -/usr/share/doc/packages/spf2-apidocs/html/a00128.html c0f5b9277878bd7bd848139ba2c55647e9680ccbfec3d66628926c2c4769a6d5 2 -/usr/share/doc/packages/spf2-apidocs/html/a00128_a5987e5e245a33593a85e594d24326de3_cgraph.png 2fd304223695c9e69a4e0b70d20d2c36211aad5cc4907acc61d70c278fbe599e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00128_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 0745e1af026953b1005ee70b5eeb904a3a8f597aa721b32ba1e2e8a8f778928b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00128_source.html c5c8cbccfbae6965ec39cc97a3699a522e8356c3659ef08f6b0a21c77b99d5ae 2 -/usr/share/doc/packages/spf2-apidocs/html/a00129.png 648d4087f90b7142bf63f0053f148c80497cf8e78fa5c74fdfbe6a45ca3a71ae 2 -/usr/share/doc/packages/spf2-apidocs/html/a00131.html a3f562150d8c0b30a1df5a9fd13360d906caf4ae201f47a6842631e88a34e27d 2 +/usr/share/doc/packages/spf2-apidocs/html/a00125.html 3044943fffc38b1298411b7a5fc19f22699a1490e080878469ad39f37f8b78fb 2 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png bc109ad40e95e744de527343e79d188cd9a41bebb224210b6f929fc2c65342ee 2 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a12f1759a708ae16b782e86406ce3c683_cgraph.png 22f59013d5917f752f5d0c19af9097a87096e4809b6bcb8b1269954608200cd9 2 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a4be188439efe765c664a1e04c750f23f_cgraph.png 11097748923a7044ad1b0d92c7e8bbcb778b9166b2dbb0e594ded8a002c61560 2 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a5330cf664d7629a5829f923b4134bd09_cgraph.png 4601bc5d9173610a568f8d3daf5cd1b71845207e15b1b2eb7ecabfb28eba60fe 2 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a87e5107c8283addb06163244828a373e_cgraph.png 7e083f2691bb8ab53c6a0127f723424b167aa22ea4d284269d32da497281e254 2 +/usr/share/doc/packages/spf2-apidocs/html/a00125_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png af98704181f96ef090a090b543cac3e4ba3df87227994a81657efe8b86b0e6a2 2 +/usr/share/doc/packages/spf2-apidocs/html/a00125_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png c367b9905a4ca24189c0d15a6910f9e91e01bcdd29de07677509f43e380c15b4 2 +/usr/share/doc/packages/spf2-apidocs/html/a00125_source.html f3a4040df09f0cdcffdac9468d524f111e01f6c077be5b931442ab2d4d95ff67 2 +/usr/share/doc/packages/spf2-apidocs/html/a00126.png 62652426deaf2a996c05644511eda6f64d7ce13c25a5107931a386ed6f29fd20 2 +/usr/share/doc/packages/spf2-apidocs/html/a00128.html 8e7c9d84ec4a3e62e8b3a35e7f1fae6e8584acd844be5b7030ff5af334dd8c5c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00128_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 1ef27edfea978b5839cf37d48e9799c8a07f955ac45c379e8d01184a8e575958 2 +/usr/share/doc/packages/spf2-apidocs/html/a00128_source.html f3018245ba459c3c9f94ef6ecda6c47fb17a31854c207849de8fde1d73814c19 2 +/usr/share/doc/packages/spf2-apidocs/html/a00129.png f709b4befdcbead080cbf2f51c3e3c2a21f418a2378c6c5c8833169e30abaa59 2 +/usr/share/doc/packages/spf2-apidocs/html/a00131.html e8cad0c02cfc107c831b1c93216c95a228e807cdf926904f1bf6aa3c963ba576 2 @@ -634 +642 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00131_source.html 034f41e3673c80607394d19684600358ce0cd270a1c5e54a722c1cc5f1793aae 2 +/usr/share/doc/packages/spf2-apidocs/html/a00131_source.html f813d1759ce81c1288c624d9fd821729689d902258c2d615d18a7d0de8e15070 2 @@ -636,28 +644,20 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00134.html 7000999b326e3873ccd2cc3f920cc6fea07d65e804c27c77882d988c315d7f8d 2 -/usr/share/doc/packages/spf2-apidocs/html/a00134_source.html f556a2be87e474a19749864f0d2b45247bae6a63b16c93e22c4850c8c5f02c86 2 -/usr/share/doc/packages/spf2-apidocs/html/a00135.png 0605e5c9e5c96afd9ed397c4e867307408a65c029dd4d5606dbff833005a52ab 2 -/usr/share/doc/packages/spf2-apidocs/html/a00137.html abb1da2edd57d10d4565a78aa5797e91cfd1be44cca4e2d1a0d3a39b885ce212 2 -/usr/share/doc/packages/spf2-apidocs/html/a00137_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 5c28d0cfed50d5b29ede93b8b5de235294ba288a5bb27131d5e18375b262e90c 2 -/usr/share/doc/packages/spf2-apidocs/html/a00137_ac6060857bbd9aafeb41ac938439dc995_cgraph.png ed7350043f69fc11bd4c1b88fa6e7468f151c1c52b24298f82bdef2effbb027d 2 -/usr/share/doc/packages/spf2-apidocs/html/a00137_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png e1a8e11e31a30ad0a382b86733ffb0e12c09c7ee9ffa02f08ea6c187f8c50ec6 2 -/usr/share/doc/packages/spf2-apidocs/html/a00137_source.html 1671ea10bbd5faf486d3ccbaff8ab39f11d4e31192ef1d16ce07e10f3b8fb42c 2 -/usr/share/doc/packages/spf2-apidocs/html/a00138.png 6dee2eadb9482f2149ae83cf64d14605ca32150d1c0e69ac1de2d832acdb2269 2 -/usr/share/doc/packages/spf2-apidocs/html/a00140.html 4446731d9f5b54c4bee5c5ed90c3d1fb022ca286ce24d1c298129d550d66bd98 2 -/usr/share/doc/packages/spf2-apidocs/html/a00140_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 8172abac395fab805f04cef9efafc3fb8603a65caa41d639686d3583496a0a19 2 -/usr/share/doc/packages/spf2-apidocs/html/a00140_source.html 87749950a2bdfe80e5888fadb0fe98464c2ccdeececa964b501ae6ab3268f757 2 -/usr/share/doc/packages/spf2-apidocs/html/a00141.png 1a3bf1b8118bd93f08fd24bc291ff0f6081f37426c9d09c6b699f2b9faa8802e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00143.html 06cd96af3796a22d40fd918d52ad5f610882a34ba3c53f1c3e9641c5e470e627 2 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a031db01ec15327ce45da35d4495bd57a_cgraph.png 0349796658f07f1e07df67cb6045570da00baa66a5ee0dbd0a9bee2d7f85bb42 2 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a56126c078ad970b8868c6422be5d7339_cgraph.png fd7d0449fd2e916ba5744a4e3ffc6d53667337f5e303b248a206170c71038c91 2 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a87f0543d5a62057272b9c71a332a53f0_cgraph.png e97643a3eaf478f252abd8f2e1956408df25d5f4e88f87c8df602e43f5035c2a 2 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 4b2308ecb19a8918bc030be44cc1cd553e6b05103bc158cb8f5860aaaa9d6d39 2 -/usr/share/doc/packages/spf2-apidocs/html/a00143_aa9339ddf5e3a508af67836913c7ba009_cgraph.png bf8577ae19ec01f500b9b0dfadcf021c3d1ac2cadcae117874172433bb0c02fc 2 -/usr/share/doc/packages/spf2-apidocs/html/a00143_source.html 2bcbb1fc2da337dd0f55f594d55bc883ac33f83375ba869e15db5ca95bda1cf6 2 -/usr/share/doc/packages/spf2-apidocs/html/a00144.png a3a37db8198bbf70f6d8330dd32fb568e9722e9e40b7887bd5141b624e5ac754 2 -/usr/share/doc/packages/spf2-apidocs/html/a00146.html 64aa5d4adaab653063a1aa98f438c13fa9e4b9e772f05ef39788047b40f4cfe4 2 -/usr/share/doc/packages/spf2-apidocs/html/a00146_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 1ef27edfea978b5839cf37d48e9799c8a07f955ac45c379e8d01184a8e575958 2 -/usr/share/doc/packages/spf2-apidocs/html/a00146_source.html 4a9f29b2f80b8af3abd4539a2700a63911dddc9f49e9cdc130cd058aff8a217b 2 -/usr/share/doc/packages/spf2-apidocs/html/a00147.png f709b4befdcbead080cbf2f51c3e3c2a21f418a2378c6c5c8833169e30abaa59 2 -/usr/share/doc/packages/spf2-apidocs/html/a00149.html 38b6f40c6a885bad9db620dc57399b3b2f2b6ff333131091fbfade6ede78a2df 2 -/usr/share/doc/packages/spf2-apidocs/html/a00149_source.html f86f833aa8cd460073966736fd982e250ba25f57bd09602404ba048b12545d65 2 -/usr/share/doc/packages/spf2-apidocs/html/a00150.png 3731bab1f59a17b263f3db1d04f5bef8a4795e06102f42f642cd4f84d4b8c9d2 2 +/usr/share/doc/packages/spf2-apidocs/html/a00134.html c756bcfd340a3f2e056bd6f3d6a864f550c7f953853c950d36a095c0470e7eb7 2 +/usr/share/doc/packages/spf2-apidocs/html/a00134_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 645b00a1f59123b64dd1f48e547b8ae5a68452fcb857d7d450ff5210d3bec3d0 2 +/usr/share/doc/packages/spf2-apidocs/html/a00134_source.html 98f4175062401c98a4448b8ebb3e077a4db7149a92d30249737009171873e4ac 2 +/usr/share/doc/packages/spf2-apidocs/html/a00135.png dd423e5392cd154f1cb37d192ae2447cbd03e73f886ce34d2c37af7c38cbe42a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00137.html a6e1190caab9e452e998bb5b611ff5d96f593f4853900da8136d0c25c24e16a5 2 +/usr/share/doc/packages/spf2-apidocs/html/a00137_source.html 7bfd0ffe763b51eff321d57547453c6ad3946c771be50daba9aad0c0b01b04d3 2 +/usr/share/doc/packages/spf2-apidocs/html/a00138.png 48430e89b976186d651fa8e62f6effae0ef1dde4ecfbb402dfc11649dcc1be97 2 +/usr/share/doc/packages/spf2-apidocs/html/a00140.html 8d75238a848aafbb828706ea9838c7681e531d02c9ba0ab2b558237c0ee0ccaf 2 +/usr/share/doc/packages/spf2-apidocs/html/a00140_source.html 1a1608ec00ad52a982591ed7c997a3f2043187b38e01d207d64e9bedca2ce76e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00141.png 3731bab1f59a17b263f3db1d04f5bef8a4795e06102f42f642cd4f84d4b8c9d2 2 +/usr/share/doc/packages/spf2-apidocs/html/a00143.html 38586caf87854ec0e58c635885a59958bca21be610223409c9120b9d1bc41649 2 +/usr/share/doc/packages/spf2-apidocs/html/a00143_source.html 5f08d9bdeb8cc3579a8b11793e63aa3cf3d7f74831b9f4122e81568556a172c6 2 +/usr/share/doc/packages/spf2-apidocs/html/a00146.html dcfe4b7a163984748a6805fbb04d4f30fe758bbe84bf71d5dd51a7472be5c18e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00146_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 287ece7d13e6e5c13719dd9833f4af888478e004271c1b9d475c1fcc2a3055da 2 +/usr/share/doc/packages/spf2-apidocs/html/a00146_source.html d6865760fa92bc2382b4a98c39e9d00ef33a360a52c743754307ec09fc55a446 2 +/usr/share/doc/packages/spf2-apidocs/html/a00147.png b24c66c576f94cfd1f4da7e3bb43cbb928059445ef24436d590793ccf5887a42 2 +/usr/share/doc/packages/spf2-apidocs/html/a00149.html f986aba779f15e38599d09dd01eb8f71bb04e8a4167a39fd5ca44ca438bd9e11 2 +/usr/share/doc/packages/spf2-apidocs/html/a00149_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 8a91abfcee56137a8dd34b1285736f748b732be35d5c7681a84df7a032fdefaf 2 +/usr/share/doc/packages/spf2-apidocs/html/a00149_source.html 2b81031fa168f19a3d26c7d5029c934214bd30b002c432d63683f034f1447040 2 +/usr/share/doc/packages/spf2-apidocs/html/a00150.png 2187cc51a3ad09c0f4114502229855575b8c498cd241a89da29e66c8064854c6 2 @@ -667,2 +667,2 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00158.html 8881d523a72faf26817c124cf7bac99b53199973868de9a67fe7a9c654942e25 2 -/usr/share/doc/packages/spf2-apidocs/html/a00162.html 7d799544ec7e818a8543f36782e4e45f70d64268b78ef4bef2e13ea5cdbbe71c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00158.html a23864c53efa1cdba0d6eee89967fff99d995d30d90bb86749bab1ce5360cae9 2 +/usr/share/doc/packages/spf2-apidocs/html/a00162.html c759a3f5dd332dbba3626fd938795373f8d6616013e705a2c106bc22185c6f9d 2 @@ -670,4 +670,4 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00166.html 8f80633678be07e95ae97173eb84b974fe7b9edd58151891326c4c789327873e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00170.html b2f1e00c1f5b73ae04f9b78827cd92c661269d3a74b383ea3f13d01e74a9b99f 2 -/usr/share/doc/packages/spf2-apidocs/html/a00174.html dfefce3010af7a66d5fe7c0855643db101741196d614ae8bec4e56b83959fadd 2 -/usr/share/doc/packages/spf2-apidocs/html/a00178.html 2d6ad98137c63a079644f228bcd1ce344298faa4c7cb8cab76e0dd062d700667 2 +/usr/share/doc/packages/spf2-apidocs/html/a00166.html f2df80caf5feb9876e3a65de17bfb953b65429e68a6d6e650bc9d5d3cb58389a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00170.html c7d6a1de3cea600c14d1375137acdcefd7a534c5d3dcd0f14b0077342241648e 2 +/usr/share/doc/packages/spf2-apidocs/html/a00174.html 7b7409010fc6e1c4775b9746a6d911f67f8318ccf97531846ed3ec2892a8fbe3 2 +/usr/share/doc/packages/spf2-apidocs/html/a00178.html bbc556d9564e7a8d045dbcf5f648066bf7c87b615efb3f16139ccfefe3ca528e 2 @@ -675,3 +675,3 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00182.html b74fcc84cf8d76bb8db7581a1da955a14d57f588cb2962ee3ed3387a1a69b07e 2 -/usr/share/doc/packages/spf2-apidocs/html/a00186.html f5d80365d26a121d96c3e8da775924148e73806f6345e3b1db9c145be6ffb970 2 -/usr/share/doc/packages/spf2-apidocs/html/a00190.html 668fd9b70bebd9704b1d5aac3f90a285240bc99fc1c3937f2247cb61e43ae257 2 +/usr/share/doc/packages/spf2-apidocs/html/a00182.html f63b1b1eda401cf6c3cba5b8101003024fa53ea6489f225568ffa33301744915 2 +/usr/share/doc/packages/spf2-apidocs/html/a00186.html b1f58fdbba50f1e45c8ba84b177db30ccac8ec2f3dceba0016cdcda10518500b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00190.html 6b30000902c2e4c9d4bf84f7b60accd4984f9bec94fc173dcd5c96c4cbbea829 2 @@ -679,4 +679,4 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00194.html 02dbc093c94ea9df7a3b97e8bb60c9ba3d3e3e06f6105b1f9897a45b8edf71b2 2 -/usr/share/doc/packages/spf2-apidocs/html/a00198.html 6a3a44cc8474027b264aeb724ee5c9fb6deb897d22948f431578fac8ea4d8b72 2 -/usr/share/doc/packages/spf2-apidocs/html/a00202.html b896f9352d2808cadaf9f3f99b0397a8f019c892f5612b4036ab0b783b5f9f57 2 -/usr/share/doc/packages/spf2-apidocs/html/a00206.html f305a088ad3ae9329f6d7372cf449b00fc886111255b54c6902b5ffd8f9cc24c 2 +/usr/share/doc/packages/spf2-apidocs/html/a00194.html 4598cff4c743c652a8ca0150d0b2356d42f18b3af736495df6e561619f9586be 2 +/usr/share/doc/packages/spf2-apidocs/html/a00198.html 752ac79916547ae355e178be8198f36063ccd0eb134b98063a794f87621a739b 2 +/usr/share/doc/packages/spf2-apidocs/html/a00202.html 8e7b591d20e84c50b5b947009c838a503b7f9cd409a0c42fe9196afc30da3181 2 +/usr/share/doc/packages/spf2-apidocs/html/a00206.html 37eb2c657e5437eb889e49df757393b13cd59a91a0d4983fbcb6df28e253db42 2 @@ -684,2 +684,2 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00210.html dd8233cb686661edbd6d5108035eca01416b7a1562e3a13b531832084324aef1 2 -/usr/share/doc/packages/spf2-apidocs/html/a00214.html bdaaf0e8f5268a502994a81df822edd341ef4f20196605e258ca19111480c8fa 2 +/usr/share/doc/packages/spf2-apidocs/html/a00210.html 3ce704de8ae05760f629f40938a76c1be0682bbdd1e593f61bffec63f963a5f2 2 +/usr/share/doc/packages/spf2-apidocs/html/a00214.html 9c2e464a9b030a70835a981d0dbe32cfedb0a5b94facc056cfc64b5ee7e9ab0b 2 @@ -688 +688 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00222.html 512ac1e598b914635537b868443b3aa595aecdee0f62de6478f5bcf33cf20813 2 +/usr/share/doc/packages/spf2-apidocs/html/a00222.html c25c9d5c85fd9d86ec82e6dae3800e3ae5208ae49daa2ab2ea31d0054e9f98ac 2 @@ -690,2 +690,2 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00226.html 6f4c6283967ce3758c631fb58a29f9278bf6e6a21bbbddb8109798c271b792c3 2 -/usr/share/doc/packages/spf2-apidocs/html/a00230.html 9e035a1373dbc5ea842dff151ebdd01c1c194de8ce3cbf3692e156a2e4e537c3 2 +/usr/share/doc/packages/spf2-apidocs/html/a00226.html 23440c6de5316449e8dac92786668df28c64af7ba66f10af6a2a02f1c7d5845d 2 +/usr/share/doc/packages/spf2-apidocs/html/a00230.html 16290b69edd175dfe687c3db8be23a6cfdfd07ec7466ae2c0936fe03c025a8c4 2 @@ -693,6 +693,6 @@ -/usr/share/doc/packages/spf2-apidocs/html/a00234.html ccc5351331be84c775b4fbdf0354dc5d26dd3ca9b41e77c7d78fc8b7233dddf6 2 -/usr/share/doc/packages/spf2-apidocs/html/a00238.html 0c078ca38a44fc5add1c9c46ef5abe8fccb408e79d905de113e02cda728a8722 2 -/usr/share/doc/packages/spf2-apidocs/html/a00242.html 66073cb280d23fefa5a6a6f4e12806fbe86b24e9c15b7260695cda45e4f179c2 2 -/usr/share/doc/packages/spf2-apidocs/html/a00250.html 8ecc51e947654add98b69afe774b0b7f58c14dd2c75f1f393c00d7c40b55f9fd 2 -/usr/share/doc/packages/spf2-apidocs/html/a00254.html 1b4e605142a67e29cf341142706a1f7d28ca8baa370b0ff01fa2e30d91a178f1 2 -/usr/share/doc/packages/spf2-apidocs/html/a00258.html a23bf350b1bc4decf2af7d4af159cf579233cae70c7e35d374c545d7f03c8719 2 +/usr/share/doc/packages/spf2-apidocs/html/a00234.html 18660d56af8c1166b253f62b566eb1930f00e05c0d19c0b068ab39bf46d1b662 2 +/usr/share/doc/packages/spf2-apidocs/html/a00238.html b1f563f58f5c4a6b0f6b26644d787ba27d48bd2cd559a06896e661b4aafc55f7 2 +/usr/share/doc/packages/spf2-apidocs/html/a00242.html d8050cf5635543d087fb6b4c065deabd4553f7c20afcf9c99e76a4742741508a 2 +/usr/share/doc/packages/spf2-apidocs/html/a00250.html ab2a80421df534c39c8ef31cfe83618e22838df1635f0e50878dcd7a2bc0a5fc 2 +/usr/share/doc/packages/spf2-apidocs/html/a00254.html 70dea1f36a4c63d10a0dd1f3f1cf952c30e728a0a971dade37d91d3454fb7643 2 +/usr/share/doc/packages/spf2-apidocs/html/a00258.html b3356c043c6d03b1a82b958bd3f8b14791486fb60313f352cabae913f8a3432c 2 @@ -705,6 +705,6 @@ -/usr/share/doc/packages/spf2-apidocs/html/dir_000001_000000.html bf1bee842197858d8d55cf154f6265b9b6c2720fc6a99ffe898190635c9c8732 2 -/usr/share/doc/packages/spf2-apidocs/html/dir_000002_000000.html 1ce37a6222ee00b927519b9318c2422d7a525794e91c2e3d809a2d4f98c64b3b 2 -/usr/share/doc/packages/spf2-apidocs/html/dir_000003_000000.html 1e280b820b2de08ebb4e3193b8a1fc4f6fcf2614e6b48fd8a335968636d1acc4 2 -/usr/share/doc/packages/spf2-apidocs/html/dir_000004_000000.html ba5c8cabdc057fbca597447ec6a839b71bf41485ab7aaf2d98736a6b47d3f480 2 -/usr/share/doc/packages/spf2-apidocs/html/dir_000005_000000.html 6140d0b644aa600a0b929121d0ea306846d26e30fd8dee769ad1a46b0a4390ff 2 -/usr/share/doc/packages/spf2-apidocs/html/dir_0e13b3172c08af35ff2e87cf318f83d1.html 9be21993ffe0ccb9c5ce0412d32116e10dbd467649580d6b6fdc92fe66f5bf34 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_000001_000000.html 88491a4f00b6d3baa134ea3ff3f7e954db8b44b52dd3c1617b0553bf0551fc4c 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_000002_000000.html 3bc5a3bbc2c8bcc9b9006fde3a3fec8992e20801afc096afae97a56ac929e973 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_000003_000000.html 253aae36f7c4bc948d5c8d6abe4bbb864c322279482214866788bfc8ca240a4f 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_000004_000000.html 7c604f455e3b6f0d678198acca9750eb3cd75d4fa79e190b102a05b1067eae2c 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_000005_000000.html 8c7477903a118f25d41454592ff7a5820bafa6df13f1e01c9549c93db39ca80a 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_0e13b3172c08af35ff2e87cf318f83d1.html 4693463bd82ecf168f1a1939a9a92778765821b94e2f4176cb9c2890b9e41c4c 2 @@ -712 +712 @@ -/usr/share/doc/packages/spf2-apidocs/html/dir_2919c7ffd082e5d964e01e020fd5f102.html c2cfe21d484ddb3e661e3f87c9e492a9845d24b5f35cc0122f27922419a86645 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_2919c7ffd082e5d964e01e020fd5f102.html 6f7132259df1894a151d8e74e0d390397752b4748a9d8b154e686b5fe8009e9e 2 @@ -714 +714 @@ -/usr/share/doc/packages/spf2-apidocs/html/dir_51b250ab3265ab09cba37602b3575957.html 2d9adc13e5be227de346a7041e7ad2ef1470c81f5adb9c842cf3f17ab314ed1c 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_51b250ab3265ab09cba37602b3575957.html 4a71f89e70409f5f12d548e18833d3f4b4f60abf7e7f879cc94ee52337bf823e 2 @@ -718 +718 @@ -/usr/share/doc/packages/spf2-apidocs/html/dir_b0856f6b0d80ccb263b2f415c91f9e17.html 4a73da1b736d507d45b3f3d0888d14774ed895f2a49551e87609f009424fc3db 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_b0856f6b0d80ccb263b2f415c91f9e17.html b7534291c7420fa8ec48bbf5f0605439cba21fe7b01b657840ed763e426c0d12 2 @@ -720 +720 @@ -/usr/share/doc/packages/spf2-apidocs/html/dir_b3ea32240f482b9a3be07711d7e93ed5.html 3dc25a217ca944430234c023ed97e2c56cc1f6a845844ab71229473e69e96e60 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_b3ea32240f482b9a3be07711d7e93ed5.html b598614a51019852a9f179687ed406ab9fb622ac5d452a75de8bc170926294e5 2 @@ -722 +722 @@ -/usr/share/doc/packages/spf2-apidocs/html/dir_e3db586adcfae9db4e40c49586195e2a.html 5240af93421bf712e6bfa091f6022ec2a73bd3d8323c347fb4330c1b3bd2dae8 2 +/usr/share/doc/packages/spf2-apidocs/html/dir_e3db586adcfae9db4e40c49586195e2a.html e943a287c9590a92be74c83aed0debc8e0e2090d7964d8661672a83981eaee80 2 @@ -729 +729 @@ -/usr/share/doc/packages/spf2-apidocs/html/files.html a02e5e7ed118adf12c347a0bce4b84ed2bb6f4c9b9b5820b6ff75fea4e525983 2 +/usr/share/doc/packages/spf2-apidocs/html/files.html e55ccc98f7ff7e191bf3f19cd09bd5d77bc3f96e5071353f95fc0e8d69628dea 2 @@ -734,27 +734,27 @@ -/usr/share/doc/packages/spf2-apidocs/html/globals.html a020e96a177b45aaf217171501a0076665a18947cc93e739e2772fd0715c7f8c 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_a.html e84feeb10165abbe2377397e93425b9375eb670542879944bffad5f206a92dfc 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_b.html e967652380f0aa32f17ec797b02ddfbaf71502daf28a9a271d361b2818fbed2f 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_c.html 467eaac1f80c5e92ad2dae5911097779652e93430499aa9f89b94df35d2f0e22 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_d.html fe41eb49c3256ccb4dba309157cb5e2d925fb090ff6a876254eb3b8382f5ba75 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_defs.html c1f7ce99f6b23d6a04c7d02b0d7c82b1285c7c3b43588c9caf2f1fe0427d4c1e 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_enum.html b0cb7761fbd85b4ab7cc0d01bf70e724e09581c8f9880307f668e759c927abc9 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_eval.html 5e2d4aa8d61f1671a6dc36d2bac12b4bf712834f520d56198abb610cad596a56 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_f.html 9cf112597c64177a0df88f225de8be024aaf3d929704320cbdb7e2343d4d5abb 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_func.html 3161744f6947badab46a360f9418b75dbb2eea3409c3960542f908a7114f51d3 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_func_m.html 1f16e9444c8c3db21ec6b8e1146fd51bfab4549410d89ca8d60218b011f81d40 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_func_s.html 3741262936af02bac73ea621ef2e241aeec9eee6b7ae9877ec19f57fe46c4ab7 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_func_u.html bc590267e60bc90bef966cf3af9200577c55133cfc7dfa7c732d85f1329153ce 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_h.html c802d8032226fd5d2b22c83a722db39ae0bd23878c42768c6c5ce915fac7d855 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_i.html f77a03e0e1bd057702d446d9c79a88e54d687f540918587548a761bae09ead83 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_m.html d8efe01863aab47cc7822476ecea3efe1a65b7f0616d3ce9001381a784a7d045 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_n.html 8c603657d7b297bf911cea3ef55d413a576df2ad15d8b76516e7ed0858b6532c 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_p.html 7331505f3306af95b49632c770f66863fdc98581b9b2e01e956ee76576e680ba 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_r.html 1fa4856d32846f50b09260507ddb8ad2eb9c93a0eb51e4070013dbf86ed5ce8f 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_s.html 9238d84128fb98ab3858d15685d21a9dbbc94276e8de034a0d42bb3a6073a6bb 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_t.html 2cda7b1a816d19ea395f31f14ec7367d08bcd3f4515053f9490937107606e21b 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_type.html 980a1c0bd85b24d2123355560883bece2bd5d16114c83caaa042a9e0de0b30de 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_u.html acb310da00f7f9f3959160b34739705971840c2b78c5eb7b38957b6122084884 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_v.html ae7842bf22b0163a44ba4444fa532739807d45d7125ba5c326f46fb929748b37 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_vars.html dc5a7967bf96349537141d6840e50798180b9536489e032bcc00206c4aacd1df 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_w.html dcf0b35106ce8e711d04d9da734705d075d6fc18eff93bc5ee2ce18f86976e3b 2 -/usr/share/doc/packages/spf2-apidocs/html/globals_x.html 700da12a39d5a9dd5bcc02e9ba75eb87de00d13e554518180afd02a8248955fe 2 +/usr/share/doc/packages/spf2-apidocs/html/globals.html b1e41f4abaed565e68d5528d1d753b1fae4986bb474f075187c4ccd3624c95c3 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_a.html 0c45d03caeeb3f41c613bd9b17965e63a858c85d4e6f9ae099cd5e5d3c5c6b6a 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_b.html 5d389eda229be75892c1b42a250e4a3eb1a518e5cd059a4357b78987434ac1c9 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_c.html 72acead69b99b3a23698476b65d71028d8b195af9e80fdc394a2588c04283154 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_d.html efb1d00a1855794208c15dbd46059e72e51686d52c283feabe521d3e3f38d441 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_defs.html f1bd8385e5f5e4cf6e0ccc1aefc757bc520ede896116c8f7c11f8613f94851aa 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_enum.html 57a278a8c66be60860004b54b948761051744a2031288b63965253e5861ab61e 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_eval.html 08233afcb63326d2d335546b631f6f01e3fc6931acf86fe019a2c709d8a67602 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_f.html d91ff74e89caf839d87525176357d0cbb46f8eae03b5da3bb6d26db85e414e52 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_func.html af459b6eb64d0a73cac8aa558c934a2a2116fa44d5f4c1d3351ae4b50c903120 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_func_m.html 4169f27b8f501cd96a2553aa5883fbc179be98f0f704646048bfb36740a1afd2 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_func_s.html fd5e34ab179355b57b5690303d843169be20d83ae51bbc97f03cc9c3806f4f42 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_func_u.html 5fe3120dc593cf738139377688da73a7233049019c5138b2eb1e03ac586cf0ca 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_h.html 95b0a4e6d416a8c982f279c72dfc830d72b325978227f4b5554b22aa3d759a22 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_i.html 8c6d06e36ffad1a64f0e9f11344002eddf50650875d07e99a26481d8c0fbb8a4 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_m.html 642c6c088d1d43f88114b6d20d62b54a6021802f0d6e2137e13737e119b8fb06 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_n.html 55f4e3fd2b6990311a79bf4103eb533398d5ecb54e1fb96be767c2a84b31e5a3 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_p.html 0b368316193006041d332ff3bce9d23ac8da0351a4232b086a4149f7d2323149 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_r.html 126128be9d1eee5d592aaac5d9948b404aadbb3920cf855c281bddd20299c15c 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_s.html 9d5ad500f58e3b418592ce5014d642d902ae0490d4aa7173dfda61fcec1e28a8 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_t.html a8fc5ce5dc836454ff3c44804e88e8ae6615628206bba2d4154313d83450dea1 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_type.html 1b5ae7531057ac9d6886ab766f1aea158c6684318df1ce0e3a325650bc64f8e7 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_u.html 40e6224df8842f7b53f6efbcb49ca2ca0e9b6b4038967f404217275a84a92166 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_v.html e94abcdd22cb2148e46f740a72ef9bd0f3d2605a6949cc12b76ec81f27a2cef5 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_vars.html 5b5bc834c3fc95fb4714da3f4c54deeae55a080728c30b837edaf249c3663470 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_w.html 351a1e42c75612d4db4eb82276e551889c4f6eded3c3d59f575d0cad86aba176 2 +/usr/share/doc/packages/spf2-apidocs/html/globals_x.html 7ae2da6be5d91e03b3744129aad9a84304827049b353c71e5d616598535f5227 2 comparing rpmtags comparing RELEASE comparing PROVIDES comparing scripts comparing filelist --- old-filelist +++ new-filelist @@ -1,39 +1,59 @@ /usr/share/doc/packages/spf2-apidocs 0 (none) 40755 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html 0 (none) 40755 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00002.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00002_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00002_a5987e5e245a33593a85e594d24326de3_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00002_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00002_source.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00003.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00004.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00005.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00005_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00005_source.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00006.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00008.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00008_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a12f1759a708ae16b782e86406ce3c683_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a4be188439efe765c664a1e04c750f23f_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a5330cf664d7629a5829f923b4134bd09_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a72c1c640c73eb590c202b2e116a89012_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_a87e5107c8283addb06163244828a373e_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00008_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00008_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00009.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00010.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00011.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00011_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00011_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00011_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00011_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00011_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00012.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00013.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00014.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00014_a6896a665d70ca1fad208c10a85643949_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00014_a8aa1aeca4c20146c2f27132c02b359a8_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00014_af74d07e90d7d9641f5a7ba22422e2b74_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00014_afc3ca6390afd845fea81d506cba43460_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00014_source.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00015.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00016.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00017.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a031db01ec15327ce45da35d4495bd57a_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a56126c078ad970b8868c6422be5d7339_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a87f0543d5a62057272b9c71a332a53f0_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00017_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00017_aa9339ddf5e3a508af67836913c7ba009_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00017_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00018.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00019.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00020.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00020_a6896a665d70ca1fad208c10a85643949_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00020_a8aa1aeca4c20146c2f27132c02b359a8_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00020_af74d07e90d7d9641f5a7ba22422e2b74_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00020_afc3ca6390afd845fea81d506cba43460_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00020_source.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00021.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00022.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00023.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00023_source.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00025.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00026.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00026_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00026_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00026_ac6060857bbd9aafeb41ac938439dc995_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00026_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00026_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00027.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00028.png 2 (none) 100644 root root 0 4294967295 @@ -41,23 +61,11 @@ /usr/share/doc/packages/spf2-apidocs/html/a00029_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00031.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00032.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a031db01ec15327ce45da35d4495bd57a_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a56126c078ad970b8868c6422be5d7339_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a87f0543d5a62057272b9c71a332a53f0_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00032_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00032_aa9339ddf5e3a508af67836913c7ba009_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00032_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00033.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00034.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00035.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a12f1759a708ae16b782e86406ce3c683_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a4be188439efe765c664a1e04c750f23f_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a5330cf664d7629a5829f923b4134bd09_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a72c1c640c73eb590c202b2e116a89012_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_a87e5107c8283addb06163244828a373e_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00035_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00035_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00035_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00036.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00037.png 2 (none) 100644 root root 0 4294967295 @@ -69,132 +77,132 @@ /usr/share/doc/packages/spf2-apidocs/html/a00042.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00043.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00044.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00044_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00044_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00044_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00044_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00044_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00045.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00046.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00047.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00047_aba233de6dbc888a571b25b2de1fad440_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00047_source.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00048.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00049.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00050.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a23e3070faf833397247973356e044092_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_a974873aedf7fada6e6efbe79b7b16ea3_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00050_ab2d1a6a0420741ad6c0e0014682c8ffd_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00050_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00051.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00052.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00053.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00053_source.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00054.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00055.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00056.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00056_source.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00057.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00058.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00059.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00059_aba233de6dbc888a571b25b2de1fad440_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00059_source.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00060.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00061.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00062.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00062_source.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00063.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00065.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00065_a5987e5e245a33593a85e594d24326de3_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00065_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00065_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00065_source.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00067.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00066.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00068.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00068_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00068_ac6060857bbd9aafeb41ac938439dc995_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00068_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00068_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00069.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00070.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00071.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a23e3070faf833397247973356e044092_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00071_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00071_a974873aedf7fada6e6efbe79b7b16ea3_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00071_ab2d1a6a0420741ad6c0e0014682c8ffd_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00071_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00072.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00073.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00074.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00074_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00074_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00074_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00074_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00074_source.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00075.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00077.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00077_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00077_aba233de6dbc888a571b25b2de1fad440_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00077_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00078.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00080.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00080_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00080_a8208bf567458e9076a86d1f29687f82c_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00080_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00080_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00080_a496d32ee6858ed297b8de6c51489fa9c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00080_a5879ae9b2e5c671cb9c8a86dbec36f05_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00080_aa38a61fe15bfe400cf8fbd929333a5a1_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00080_aa78b4eddc6533ffc5d74f9bbe974f6a8_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00080_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00081.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00083.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00083_a23e3070faf833397247973356e044092_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00083_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00084.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00086.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00086_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00087.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00089.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a031db01ec15327ce45da35d4495bd57a_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a56126c078ad970b8868c6422be5d7339_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a87f0543d5a62057272b9c71a332a53f0_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00089_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00089_aa9339ddf5e3a508af67836913c7ba009_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00089_source.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00090.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00092.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00092_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00093.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00095.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00095_a974873aedf7fada6e6efbe79b7b16ea3_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00095_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00096.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00098.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00098_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00099.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00101.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00101_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00101_a5987e5e245a33593a85e594d24326de3_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00101_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00101_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00102.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00104.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00104_a496d32ee6858ed297b8de6c51489fa9c_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00104_a5879ae9b2e5c671cb9c8a86dbec36f05_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00104_aa38a61fe15bfe400cf8fbd929333a5a1_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00104_aa78b4eddc6533ffc5d74f9bbe974f6a8_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00104_a72c1c640c73eb590c202b2e116a89012_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00104_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00105.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00107.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a12f1759a708ae16b782e86406ce3c683_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a4be188439efe765c664a1e04c750f23f_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a5330cf664d7629a5829f923b4134bd09_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_a87e5107c8283addb06163244828a373e_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00107_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00107_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00108.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00110.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00110_a72c1c640c73eb590c202b2e116a89012_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00110_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00110_ac6060857bbd9aafeb41ac938439dc995_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00110_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00110_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00111.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00113.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00113_a23e3070faf833397247973356e044092_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00113_source.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00114.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00116.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00116_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00116_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00117.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00119.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00119_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00119_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00120.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00122.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00122_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00123.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00125.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00125_aba233de6dbc888a571b25b2de1fad440_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a12f1759a708ae16b782e86406ce3c683_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a4be188439efe765c664a1e04c750f23f_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a5330cf664d7629a5829f923b4134bd09_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_a87e5107c8283addb06163244828a373e_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00125_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00125_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00126.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00128.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00128_a5987e5e245a33593a85e594d24326de3_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00128_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00128_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00128_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00129.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00131.html 2 (none) 100644 root root 0 4294967295 @@ -202,31 +210,23 @@ /usr/share/doc/packages/spf2-apidocs/html/a00131_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00132.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00134.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00134_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00134_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00135.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00137.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00137_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00137_ac6060857bbd9aafeb41ac938439dc995_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00137_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00137_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00138.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00140.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00140_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00140_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00141.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00143.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a031db01ec15327ce45da35d4495bd57a_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a56126c078ad970b8868c6422be5d7339_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a87f0543d5a62057272b9c71a332a53f0_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00143_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00143_aa9339ddf5e3a508af67836913c7ba009_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00143_source.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00144.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00146.html 2 (none) 100644 root root 0 4294967295 -/usr/share/doc/packages/spf2-apidocs/html/a00146_a15b6ae27bf7ee04904f978958a45575c_cgraph.png 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00146_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00146_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00147.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00149.html 2 (none) 100644 root root 0 4294967295 +/usr/share/doc/packages/spf2-apidocs/html/a00149_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00149_source.html 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00150.png 2 (none) 100644 root root 0 4294967295 /usr/share/doc/packages/spf2-apidocs/html/a00152.html 2 (none) 100644 root root 0 4294967295 comparing file checksum creating rename script RPM meta information is different Extracting packages /usr/share/doc/packages/spf2-apidocs/html/a00002.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00002.html 2023-01-07 18:00:48.343077516 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00002.html 2023-01-07 18:00:48.343077516 +0000 @@ -5,7 +5,7 @@ -libspf2: src/spf_example/spf_example.c File Reference +libspf2: src/include/spf_dns_zone.h File Reference @@ -39,85 +39,139 @@
-Macros | Functions
-
spf_example.c File Reference
+
spf_dns_zone.h File Reference
-
#include "spf.h"
-
-Include dependency graph for spf_example.c:
+ +

A local DNS zone layer. +More...

+
+This graph shows which files directly or indirectly include this file:
-
- - - - - - - - - - - - +
+ + + + +

Go to the source code of this file.

- - - -

-Macros

#href_anchor"memItemRight" valign="bottom">VALID_STR(x)   (x ? x : "")
 
- - + + + +

Functions

int main (int argc, char *argv[])
 
SPF_dns_server_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_zone_new (SPF_dns_server_t *layer_below, const char *name, int debug)
 
SPF_errcode_t SPF_dns_zone_add_str (SPF_dns_server_t *spf_dns_server, const char *domain, ns_type rr_type, SPF_dns_stat_t herrno, const char *data)
 
-

Macro Definition Documentation

- -

◆ VALID_STR

+

Detailed Description

+

A local DNS zone layer.

+

The zone DNS layer allows you to create DNS zone information from scratch, without calling some sort of external DNS resolver.

+

The primary use is to either override real DNS information, or to provide fallbacks when no DNS information is available. The zone will override the real DNS information if it is above the resolving DNS layer in the stack. It will provide a fallback if it is layered below.

+

The zone DNS layer supports wildcard domain names, but not in the way that wilcards are supported in real DNS zones. Unlike real DNS zones, a wildcard in the zone layer will match even if there are other records of a different RR type in the same zone. This makes wildcarding much more useful, but could cause confusion.

+

When using wildcards, it is important to add the most specific DNS zone data first, and the most general data last. Otherwise, the more general information will always be returned. This should probably be considered a bug and may be fixed in the future.

+

For example, if you want to add entries with the same RR type for "foo.foo.example.com", "*.foo.example.com" and "*.example.com", you should add them in this order.

+

You can also add entries with the RR type of ns_t_any, which will match any type of RR query. This is most useful when you want to wildcard HOST_NOT_FOUND entries to prevent queries of any type from being fetched from a lower DNS layer.

+

For an overview of the DNS layer system, see spf_dns.h

+ +

Definition in file spf_dns_zone.h.

+

Function Documentation

+ +

◆ SPF_dns_zone_add_str()

- + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
#define VALID_STRSPF_errcode_t SPF_dns_zone_add_str ( x)   (x ? x : "")SPF_dns_server_t * spf_dns_server,
const char * domain,
ns_type rr_type,
SPF_dns_stat_t herrno,
const char * data 
)
+

Adds an entry to a DNS zone.

+

If a given domain name has multiple records of a given RR type, you can call the add routine multiple times to add to the RR set.

+ +

Definition at line 189 of file spf_dns_zone.c.

+ +

References SPF_dns_rr_data_t::a, SPF_dns_rr_data_t::aaaa, SPF_dns_rr_data_t::mx, NETDB_SUCCESS, ns_t_a, ns_t_aaaa, ns_t_any, ns_t_mx, ns_t_ptr, ns_t_spf, ns_t_txt, NULL, SPF_dns_rr_t::num_rr, SPF_dns_zone_config_t::num_zone, SPF_dns_rr_data_t::ptr, SPF_dns_rr_t::rr, SPF_dns_rr_new_init(), SPF_E_INVALID_IP4, SPF_E_INVALID_IP6, SPF_E_NO_MEMORY, SPF_E_SUCCESS, SPF_error, SPF_RR_TRY_REALLOC, TRUE, SPF_dns_rr_data_t::txt, SPF_dns_zone_config_t::zone, and SPF_dns_zone_config_t::zone_buf_len.

+ +

Referenced by SPF_dns_test_new().

+
+Here is the call graph for this function:
+
+
+ + + + + + +
-

Function Documentation

- -

◆ main()

+ +

◆ SPF_dns_zone_new()

- + - - + + - - + + + + + + + + @@ -126,61 +180,23 @@
int main SPF_dns_server_t * SPF_dns_zone_new (int argc, SPF_dns_server_t * layer_below,
char * argv[] const char * name,
int debug 
+

These routines take care of creating/destroying/etc. the objects that hold the DNS layer configuration. SPF_dns_server_t objects contain malloc'ed data, so they must be destroyed when you are finished with them, or you will leak memory.

+

The "name" will be used when displaying debugging information so that you can tell which zone layer in the stack of DNS layers generated the output.

-

Definition at line 114 of file spf_example.c.

Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00002_a5987e5e245a33593a85e594d24326de3_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00002_a5987e5e245a33593a85e594d24326de3_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00002_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00002_ab45cbaaf02e13d89ecc75142c297d81c_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00002_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00002_source.html 2023-01-07 18:00:48.419078069 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00002_source.html 2023-01-07 18:00:48.411078011 +0000 @@ -5,7 +5,7 @@ -libspf2: src/spf_example/spf_example.c Source File +libspf2: src/include/spf_dns_zone.h Source File @@ -39,414 +39,48 @@
-
spf_example.c
+
spf_dns_zone.h
-Go to the documentation of this file.
1/*
-
2 * spf_example - An example program for how to use libspf2
-
3 *
-
4 * Author: Wayne Schlitt <wayne@midwestcs.com>
-
5 *
-
6 * File: spfquery.c
-
7 * Desc: SPF command line utility
-
8 *
-
9 *
-
10 * This program is in the public domain, there is no copyright, you
-
11 * can do anything you want with it.
-
12 */
-
13
-
14
-
15/*
-
16 * The libspf2 library uses the GNU autoconf system to help make
-
17 * the library more portable. The config.h file should have the
-
18 * HAVE_xxx defines that are appropriate for your system. Either use
-
19 * autconf to create it, or create it by hand.
-
20 */
+Go to the documentation of this file.
1/*
+
2 * This program is free software; you can redistribute it and/or modify
+
3 * it under the terms of either:
+
4 *
+
5 * a) The GNU Lesser General Public License as published by the Free
+
6 * Software Foundation; either version 2.1, or (at your option) any
+
7 * later version,
+
8 *
+
9 * OR
+
10 *
+
11 * b) The two-clause BSD license.
+
12 *
+
13 * These licenses can be found with the distribution in the file LICENSES
+
14 */
+
15
+
16
+
17
+
18
+
19#href_anchor"line"> 20#define INC_SPF_DNS_ZONE
21
-
22
-
23#href_anchor"line"> 24# include "config.h"
-
25#endif
-
26
-
27#ifdef STDC_HEADERS
-
28# include <stdio.h>
-
29# include <stdlib.h> /* malloc / free */
-
30#endif
-
31
-
32#ifdef HAVE_SYS_TYPES_H
-
33#include <sys/types.h> /* types (u_char .. etc..) */
-
34#endif
-
35
-
36#ifdef HAVE_INTTYPES_H
-
37#include <inttypes.h>
-
38#endif
-
39
-
40#ifdef HAVE_STRING_H
-
41# include <string.h> /* strstr / strdup */
-
42#else
-
43# ifdef HAVE_STRINGS_H
-
44# include <strings.h> /* strstr / strdup */
-
45# endif
-
46#endif
-
47
-
48#ifdef HAVE_SYS_SOCKET_H
-
49# include <sys/socket.h> /* inet_ functions / structs */
-
50#endif
-
51#ifdef HAVE_NETINET_IN_H
-
52# include <netinet/in.h> /* inet_ functions / structs */
-
53#endif
-
54#ifdef HAVE_ARPA_INET_H
-
55# include <arpa/inet.h> /* in_addr struct */
-
56#endif
-
57
-
58#ifdef HAVE_ARPA_NAMESER_H
-
59# include <arpa/nameser.h> /* DNS HEADER struct */
-
60#endif
-
61
-
62#ifdef HAVE_UNISTD_H
-
63#include <unistd.h>
-
64#endif
-
65
-
66#ifdef HAVE_GETOPT_H
-
67#include <getopt.h>
-
68#endif
-
69
-
70
-
71
-
72/*
-
73 * libspf2 public include files that are needed for this example
-
74 * program
-
75 */
-
76
-
77#include "spf.h"
-
78
-
79
-
80/*
-
81 * usage() just prints out the command line options for this program
-
82 */
-
83static void usage()
-
84{
-
85 fprintf(
-
86 stderr,
-
87 "Usage:\n"
-
88 "\n"
-
89 "spf_example [options]\n"
-
90 "\n"
-
91 "Valid data options are:\n"
-
92 " -i <IP address> The IP address that is sending email\n"
-
93 " -s <email address> The email address used as the\n"
-
94 " envelope-from. If no username (local\n"
-
95 " part) is given, &#href_anchor"line"> 96 " assumed.\n"
-
97 " -r <email address> [optional] The email address used as\n"
-
98 " the envelope-to email address, for\n"
-
99 " secondary-MX checking.\n"
-
100 " -h <domain name> The domain name given on the SMTP HELO\n"
-
101 " command. This is only needed if the\n"
-
102 " -sender option is not given.\n"
-
103 " -d [debug level] debug level.\n"
-
104 );
-
105}
-
106
-
107
-
108
-
109/*
-
110 * All the code is in the main routine, but most usages of libspf2
-
111 * would have the code spread around into various subrotines.
-
112 */
-
113
-
114int main( int argc, char *argv[] )
-
115{
-
116 int c;
-
117 int res = 0;
-
118 int i;
-
119
-
120 char *opt_ip = NULL;
-
121 char *opt_sender = NULL;
-
122 char *opt_helo = NULL;
-
123 char *opt_rcpt_to = NULL;
-
124 int opt_debug = 0;
-
125
-
126 /* You should not indirect on any of these structures, as their
-
127 * layout may change between versions of the library. Use the
-
128 * accessor functions instead. Definitions of the structs may not
-
129 * even be provided. */
-
130
-
131 SPF_server_t *spf_server = NULL;
-
132 SPF_request_t *spf_request = NULL;
-
133 SPF_response_t *spf_response = NULL;
-
134 SPF_response_t *spf_response_2mx = NULL;
-
135
-
136
-
137 /*
-
138 * check the arguments
-
139 */
-
140
-
141 while (1)
-
142 {
-
143 c = getopt(argc, argv, "i:s:h:r:d::" );
-
144
-
145 if (c == -1)
-
146 break;
-
147
-
148 switch (c)
-
149 {
-
150 case 'i':
-
151 opt_ip = optarg;
-
152 break;
-
153
-
154 case 's':
-
155 opt_sender = optarg;
-
156 break;
-
157
-
158 case 'h':
-
159 opt_helo = optarg;
Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00004.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00004.png /usr/share/doc/packages/spf2-apidocs/html/a00005.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00005.html 2023-01-07 18:00:48.447078272 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00005.html 2023-01-07 18:00:48.439078214 +0000 @@ -5,7 +5,7 @@ -libspf2: src/spfquery/spfquery.c File Reference +libspf2: src/include/spf_win32.h File Reference @@ -39,444 +39,19 @@
- -
spfquery.c File Reference
+
spf_win32.h File Reference
-
#include <getopt.h>
-#include "spf.h"
-#href_anchor"el" href="a00044_source.html">spf_dns.h"
-#include "spf_dns_null.h"
-#href_anchor"el" href="a00059_source.html">spf_dns_test.h"
-#include "spf_dns_cache.h"
-#href_anchor"el" href="a00053_source.html">spf_dns_resolv.h"
-
-Include dependency graph for spfquery.c:
-
-
- - - - - - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_client_options_t
&#href_anchor"memitem:">struct  SPF_client_request_t
&#href_anchor"memberdecls"> -

-Macros

#define SPF_TEST_VERSION   "3.0"
 
#define _GNU_SOURCE
 
#define TRUE   1
 
#define FALSE   0
 
#define FREE(x, f)   do { if ((x)) (f)((x)); (x) = NULL; } while(0)
 
#define FREE_REQUEST(x)   FREE((x), SPF_request_free)
 
#define FREE_RESPONSE(x)   FREE((x), SPF_response_free)
 
#define CONTINUE_ERROR   do { res = 255; continue; } while(0)
 
#define WARN_ERROR   do { res = 255; } while(0)
 
#define FAIL_ERROR   do { res = 255; goto error; } while(0)
 
#define RESIZE_RESULT(n)
 
#define APPEND_RESULT(n)
 
#define X_OR_EMPTY(x)   ((x) ? (x) : "")
 
- - - -

-Functions

int main (int argc, char *argv[])
 
-

Macro Definition Documentation

- -

◆ _GNU_SOURCE

- -
-
- - - - -
#define _GNU_SOURCE
-
- -

Definition at line 89 of file spfquery.c.

- -
-
- -

◆ APPEND_RESULT

- -
-
- - - - - - - - -
#define APPEND_RESULT( n)
-
-Value:
do { \
-
partial_result = SPF_strresult(n); \
-
RESIZE_RESULT(strlen(partial_result)); \
-
strcat(result, partial_result); \
-
} while(0)
-
const char * SPF_strresult(SPF_result_t result)
Definition: spf_utils.c:81
-
-

Definition at line 131 of file spfquery.c.

- -
-
- -

◆ CONTINUE_ERROR

- -
-
- - - - -
#define CONTINUE_ERROR   do { res = 255; continue; } while(0)
-
- -

Definition at line 116 of file spfquery.c.

- -
-
- -

◆ FAIL_ERROR

- -
-
- - - - -
#define FAIL_ERROR   do { res = 255; goto error; } while(0)
-
- -

Definition at line 118 of file spfquery.c.

- -
-
- -

◆ FALSE

- -
-
- - - - -
#define FALSE   0
-
- -

Definition at line 110 of file spfquery.c.

- -
-
- -

◆ FREE

- -
-
- - - - /usr/share/doc/packages/spf2-apidocs/html/a00005_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00005_source.html 2023-01-07 18:00:48.483078534 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00005_source.html 2023-01-07 18:00:48.467078418 +0000 @@ -5,7 +5,7 @@ -libspf2: src/spfquery/spfquery.c Source File +libspf2: src/include/spf_win32.h Source File @@ -39,790 +39,73 @@
-
spfquery.c
+
spf_win32.h
-Go to the documentation of this file.
1/*
-
2 * spfquery - Sender Policy Framwork command line utility
-
3 *
-
4 * Author: Wayne Schlitt <wayne@midwestcs.com>
-
5 *
-
6 * File: spfquery.c
-
7 * Desc: SPF command line utility
-
8 *
-
9 *
-
10 * This program is free software; you can redistribute it and/or modify
-
11 * it under the terms of either:
+Go to the documentation of this file.
1/*
+
2 * This program is free software; you can redistribute it and/or modify
+
3 * it under the terms of either:
+
4 *
+
5 * a) The GNU Lesser General Public License as published by the Free
+
6 * Software Foundation; either version 2.1, or (at your option) any
+
7 * later version,
+
8 *
+
9 * OR
+
10 *
+
11 * b) The two-clause BSD license.
12 *
-
13 * a) The GNU Lesser General Public License as published by the Free
-
14 * Software Foundation; either version 2.1, or (at your option) any
-
15 * later version,
-
16 *
-
17 * OR
-
18 *
-
19 * b) The two-clause BSD license.
-
20 *
-
21 *
-
22 * The two-clause BSD license:
-
23 *
-
24 *
-
25 * Redistribution and use in source and binary forms, with or without
-
26 * modification, are permitted provided that the following conditions
-
27 * are met:
-
28 *
-
29 * 1. Redistributions of source code must retain the above copyright
-
30 * notice, this list of conditions and the following disclaimer.
-
31 * 2. Redistributions in binary form must reproduce the above copyright
-
32 * notice, this list of conditions and the following disclaimer in the
-
33 * documentation and/or other materials provided with the distribution.
-
34 *
-
35 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS&#href_anchor"line"> 36 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-
37 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-
38 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-
39 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-
40 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-
41 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-
42 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-
43 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-
44 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
45 */
-
46
-
47#define SPF_TEST_VERSION "3.0"
-
48
-
49#ifdef HAVE_CONFIG_H
-
50# include "config.h"
+
13 * These licenses can be found with the distribution in the file LICENSES
+
14 */
+
15
+
16
+
17
+
18
+
19#href_anchor"line"> 20
+
21#ifndef INC_SPF_WIN32
+
22#define INC_SPF_WIN32
+
23
+
24
+
25#include <time.h>
+
26
+
27#include <winsock2.h>
+
28#pragma comment(lib, "ws2_32.lib")
+
29#include <ws2tcpip.h>
+
30#include <windows.h>
+
31
+
32
+
33/* ********************************************************************* */
+
34
+
35/*
+
36 * SPF startup and cleanup for Win32
+
37 */
+
38
+
39/*
+
40 * These routines basically just startup and cleanup the Winsock layer
+
41 * with a version is known to work with this library (version 2.2).
+
42 * If Winsock startup and cleanup is already being performed by the
+
43 * application, then these calls are not necessary.
+
44 *
+
45 * Otherwise, startup must be done before any other calls, and cleanup
+
46 * should be called when the application is done with the library.
+
47 */
+
48#ifdef _WIN32
+
49int SPF_win32_startup();
+
50int SPF_win32_cleanup();
51#endif
52
-
53#ifdef STDC_HEADERS
-
54# include <stdio.h>
-
55# include <stdlib.h> /* malloc / free */
-
56#endif
+
53
+
54
+
55#define __attribute__(n)
+
56
57
-
58#ifdef HAVE_SYS_TYPES_H
-
59#include <sys/types.h> /* types (u_char .. etc..) */
-
60#endif
-
61
-
62#ifdef HAVE_INTTYPES_H
-
63#include <inttypes.h>
-
64#endif
-
65
-
66#ifdef HAVE_STRING_H
-
67# include <string.h> /* strstr / strdup */
-
68#else
-
69# ifdef HAVE_STRINGS_H
-
70# include <strings.h> /* strstr / strdup */
-
71# endif
-
72#endif
-
73
-
74#ifdef HAVE_SYS_SOCKET_H
-
75# include <sys/socket.h> /* inet_ functions / structs */
-
76#endif
-
77#ifdef HAVE_NETINET_IN_H
-
78# include <netinet/in.h> /* inet_ functions / structs */
-
79#endif
-
80
-
81#ifdef HAVE_ARPA_NAMESER_H
-
82# include <arpa/nameser.h> /* DNS HEADER struct */
-
83#endif
-
84
-
85#ifdef HAVE_ARPA_INET_H
-
86# include <arpa/inet.h> /* in_addr struct */
-
87#endif
-
88
-
89#define _GNU_SOURCE
-
90#include <getopt.h>
-
91
-
92#ifdef _WIN32
-
93#include "spf_win32.h"
-
94#href_anchor"line"> 95
-
96#include "spf.h"
-
97#href_anchor"code" href="a00044.html">spf_dns.h"
-
98#include "spf_dns_null.h"
-
99#href_anchor"code" href="a00059.html">spf_dns_test.h"
-
100#include "spf_dns_cache.h"
-
101#href_anchor"line"> 102#include "spf_dns_resolv.h"
-
103#href_anchor"line"> 104#include "spf_dns_windns.h"
-
105#href_anchor"line"> 106
-
107
-
108
-
109#define TRUE 1
-
110#define FALSE 0
-
111
-
112#define FREE(x, f) do { if ((x)) (f)((x)); (x) = NULL; } while(0)
-
113#define FREE_REQUEST(x) FREE((x), SPF_request_free)
-
114#define FREE_RESPONSE(x) FREE((x), SPF_response_free)
-
115
-
116#define CONTINUE_ERROR do { res = 255; continue; } while(0)
-
117#define WARN_ERROR do { res = 255; } while(0)
-
118#define FAIL_ERROR do { res = 255; goto error; } while(0)
-
119
-
120#define RESIZE_RESULT(n) do { \
-
121 if (result == NULL) { \
-
122 result_len = 256 + n; \
-
123 result = malloc(result_len); \
-
124 result[0] = '\0'; \
-
125 } \
-
126 else if (strlen(result) + n >= result_len) { \
-
127 result_len = result_len + (result_len >> 1) + 8 + n; \
-
128 result = realloc(result, result_len); \
-
129 } \
/usr/share/doc/packages/spf2-apidocs/html/a00008.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00008.html 2023-01-07 18:00:48.507078708 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00008.html 2023-01-07 18:00:48.515078767 +0000 @@ -5,7 +5,7 @@ -libspf2: src/spftest/spftest.c File Reference +libspf2: src/include/spf_request.h File Reference @@ -39,127 +39,397 @@
-
spftest.c File Reference
+
spf_request.h File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
-#include "spf_dns.h"
-#href_anchor"el" href="a00059_source.html">spf_dns_test.h"
-#include "spf_dns_internal.h"
+
#include "spf_server.h"
-Include dependency graph for spftest.c:
+Include dependency graph for spf_request.h:
- - - - - - - - - - - - - - - - + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Go to the source code of this file.

#define FREE(
- - - - - - - -

-Macros

#href_anchor"memItemRight" valign="bottom">SPF_TEST_VERSION   "3.0"
 
#define TRUE   1
 
#define FALSE   0
 
+ + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_request_t
&#href_anchor"memberdecls">

Functions

int main (int argc, char *argv[])
 
SPF_request_t * SPF_request_new (SPF_server_t *spf_server)
 
void SPF_request_free (SPF_request_t *sr)
 
SPF_errcode_t SPF_request_set_ipv4 (SPF_request_t *sr, struct in_addr addr)
 
SPF_errcode_t SPF_request_set_ipv6 (SPF_request_t *sr, struct in6_addr addr)
 
SPF_errcode_t SPF_request_set_ipv4_str (SPF_request_t *sr, const char *astr)
 
SPF_errcode_t SPF_request_set_ipv6_str (SPF_request_t *sr, const char *astr)
 
SPF_errcode_t SPF_request_set_helo_dom (SPF_request_t *sr, const char *dom)
 
int SPF_request_set_env_from (SPF_request_t *sr, const char *from)
 
const char * SPF_request_get_rec_dom (SPF_request_t *sr)
 
const char * SPF_request_get_client_dom (SPF_request_t *sr)
 
int SPF_request_is_loopback (SPF_request_t *sr)
 
SPF_errcode_t SPF_request_query_mailfrom (SPF_request_t *spf_request, SPF_response_t **spf_responsep)
 
SPF_errcode_t SPF_request_query_rcptto (SPF_request_t *spf_request, SPF_response_t **spf_responsep, const char *rcpt_to)
 
SPF_errcode_t SPF_request_query_fallback (SPF_request_t *spf_request, SPF_response_t **spf_responsep, const char *record)
 
SPF_errcode_t SPF_request_get_exp (SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t *spf_record, char **bufp, size_t *buflenp)
 
SPF_errcode_t SPF_i_done (SPF_response_t *spf_response, SPF_result_t result, SPF_reason_t reason, SPF_errcode_t err)
 
-

Macro Definition Documentation

- -

◆ FALSE

+

Function Documentation

+ +

◆ SPF_i_done()

- + + + + + + + + + + + + + + + + + + + + + + + Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a12f1759a708ae16b782e86406ce3c683_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a12f1759a708ae16b782e86406ce3c683_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a4be188439efe765c664a1e04c750f23f_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a4be188439efe765c664a1e04c750f23f_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a5330cf664d7629a5829f923b4134bd09_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a5330cf664d7629a5829f923b4134bd09_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a72c1c640c73eb590c202b2e116a89012_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a72c1c640c73eb590c202b2e116a89012_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a87e5107c8283addb06163244828a373e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_a87e5107c8283addb06163244828a373e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00008_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00008_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00008_source.html 2023-01-07 18:00:48.563079116 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00008_source.html 2023-01-07 18:00:48.559079086 +0000 @@ -5,7 +5,7 @@ -libspf2: src/spftest/spftest.c Source File +libspf2: src/include/spf_request.h Source File @@ -39,11 +39,11 @@
-
spftest.c
+
spf_request.h
Go to the documentation of this file.
1/*
@@ -51,8 +51,8 @@
3 * it under the terms of either:
4 *
5 * a) The GNU Lesser General Public License as published by the Free
-
6 * Software Foundation; either version 2.1, or (at your option) any
-
7 * later version,
+
6 * Software Foundation; either version 2.1, or (at your option) any
+
7 * later version,
8 *
9 * OR
10 *
@@ -61,308 +61,120 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16
-
17
+
16#href_anchor"line"> 17#define INC_SPF_REQUEST
18
-
19/*
-
20 * NOTE:
-
21 *
-
22 * This is just a test bed that can be used while developing the
-
23 * library. It is not intended to make sense or to be useful.
-
24 */
-
25
-
26#define SPF_TEST_VERSION "3.0"
-
27
-
28
-
29/* we include spf_internal.h so us internal config.h */
-
30#include "spf_sys_config.h"
-
31
-
32
-
33#href_anchor"line"> 34# include <stdio.h>
-
35# include <stdlib.h> /* malloc / free */
-
36#endif
-
37
-
38#ifdef HAVE_SYS_TYPES_H
-
39#include <sys/types.h> /* types (u_char .. etc..) */
-
40#endif
-
41
-
42#ifdef HAVE_INTTYPES_H
-
43#include <inttypes.h>
-
44
-
45#endif
-
46#ifdef HAVE_STRING_H
-
47# include <string.h> /* strstr / strdup */
-
48#else
-
49# ifdef HAVE_STRINGS_H
-
50# include <strings.h> /* strstr / strdup */
-
51# endif
-
52#endif
-
53
-
54#ifdef HAVE_ARPA_INET_H
-
55# include <arpa/inet.h> /* in_addr struct */
-
56#endif
-
57
-
58#ifdef HAVE_NETDB_H
-
59# include <netdb.h> /* in_addr struct */
-
60#endif
-
61
-
62
-
63
-
64#include "spf.h"
-
65#href_anchor"code" href="a00044.html">spf_dns.h"
-
66#include "spf_dns_test.h"
-
67
-
68#href_anchor"code" href="a00041.html">spf_dns_internal.h" /* we test the lookup functions */
-
69
-
70
-
71#define TRUE 1
-
72#define FALSE 0
-
73
-
74
-
75
-
76static void usage()
-
77{
-
78 printf( "Usage: spftest [spf \"<spf record>\" | domain <domain name>\n" );
-
79 printf( " | ip <ip address> | exp \"<explanation string>\"\n" );
-
80 printf( " | version ]\n" );
-
81}
-
82
-
83
-
84int
-
85main( int argc, char *argv[] )
-
86{
-
87 SPF_server_t *spf_server = NULL;
-
88 SPF_request_t *spf_request = NULL;
-
89 SPF_response_t *spf_response = NULL;
-
90 SPF_record_t *spf_record = NULL;
-
91 SPF_error_t *spf_error = NULL;
-
92
-
93 char *spf_rec;
-
94 SPF_dns_rr_t *dns_rr = NULL;
-
95
-
96 SPF_errcode_t err;
-
97 int major, minor, patch;
-
98 int i;
-
99
-
100 spf_server = SPF_server_new(SPF_DNS_CACHE, 2);
-
101
-
102 if ( argc <= 1 ) {
-
103 usage();
-
104 err = 1;
-
105 goto error;
-
106 }
-
107
-
108 if ( strcmp( argv[1], "version" ) == 0 ) {
-
109 fprintf( stderr, "spftest version information:\n" );
-
110 fprintf( stderr, "SPF test system version: %s\n",
- -
112 fprintf( stderr, "Compiled with SPF library version: %d.%d.%d\n",
- - -
115 SPF_get_lib_version( &major, &minor, &patch );
-
116 fprintf( stderr, "Running with SPF library version: %d.%d.%d\n",
-
117 major, minor, patch );
-
118 fprintf( stderr, "\n" );
-
119 err = 0;
-
120 goto error;
-
121 }
-
122
-
123 if ( argc <= 2 ) {
-
124 usage();
-
125 err = 1;
-
126 goto error;
-
127 }
-
128 else if ( strcmp( argv[1], "spf" ) == 0 )
-
129 spf_rec = argv[2];
-
130 else if ( strcmp( argv[1], "domain" ) == 0 )
-
131 {
-
132 dns_rr = SPF_dns_lookup( spf_server->resolver, argv[2], ns_t_txt, TRUE );
-
133
-
134 if ( dns_rr->herrno != NETDB_SUCCESS )
-
135 {
-
136 printf( "DNS lookup for \"%s\" failed: %d\n",
-
137 argv[1], dns_rr->herrno );
-
138 err = 1;
-
139 goto error;
-
140 }
-
141 spf_rec = dns_rr->rr[0]->txt;
-
142 }
-
143 else if ( strcmp( argv[1], "ip" ) == 0 )
-
144 {
-
145 struct in_addr ipv4;
-
146 ipv4.s_addr = 0x04030201;
-
147
-
148 dns_rr = SPF_dns_rlookup( spf_server->resolver, ipv4, ns_t_ptr, TRUE );
-
149
-
150 if ( dns_rr->herrno != NETDB_SUCCESS )
-
151 {
-
152 printf( "DNS lookup for \"%s\" failed: %d\n",
-
153 argv[1], dns_rr->herrno );
-
154 err = 1;
-
155 goto error;
-
156 }
-
157 spf_rec = dns_rr->rr[0]->txt;
-
158
-
159 /* FIXME: do something with the rlookup */
-
160 err = 1;
-
161 goto error;
-
162 }
-
163 else if ( strcmp( argv[1], "exp" ) == 0 ) {
-
164 int len;
-
165 char *p, *s;
-
166
-
167 len = strlen( argv[2] );
-
168 spf_rec = malloc( len * 2 + sizeof( "v=spf1 exp-text=" ) );
-
169
-
170 strcpy( spf_rec, "v=spf1 exp-text=" );
-
171
-
172 p = spf_rec + sizeof( "v=spf1 exp-text=" ) - 1;
-
173 s = argv[2];
-
174
-
175 while( *s != '\0' ) {
/usr/share/doc/packages/spf2-apidocs/html/a00009.png differs at offset '19' (PNG image data, 859 x 411, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00009.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00009.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 03 5b 00 00 01 9b 08 03 00 00 00 05 95 7a |...[...........z| -00000020 aa 00 00 00 63 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....cPLTE......T| +00000010 00 00 01 6f 00 00 01 e5 08 03 00 00 00 0d c9 8d |...o............| +00000020 98 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....fPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| -00000040 70 e0 e0 e0 8b 8b 8b c3 c3 c3 a7 a7 a7 63 b8 ff |p............c..| +00000040 70 e0 e0 e0 a7 a7 a7 c3 c3 c3 8b 8b 8b 63 b8 ff |p............c..| 00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| -00000060 7f 7f 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 72 |..111SSS___999rr| -00000070 72 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 66 |r...&&&...LLLfff| -00000080 99 99 99 d3 d3 d3 00 00 00 ff ff ff a0 78 e4 11 |.............x..| -00000090 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 |....tRNS.@..f...| -000000a0 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b |.pHYs..........+| -000000b0 0e 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 89 9a |.... .IDATx.....| -000000c0 db a8 b6 46 9d ca 78 bb ad f1 5e 25 95 a4 fa 93 |...F..x...^%....| -000000d0 df ff 29 2f a0 59 02 89 61 83 10 fa d7 39 5d 29 |..)/.Y..a....9])| -000000e0 4b 08 36 c3 32 68 b0 eb f1 00 00 00 00 00 00 00 |K.6.2h..........| -000000f0 00 00 00 00 e0 12 7c c4 c2 d9 0d 01 00 31 1f ff |......|......1..| -00000100 c5 01 dc 02 a9 01 b7 00 f0 03 dc 02 c0 0f 70 0b |..............p.| -00000110 00 3f c0 2d 00 fc 00 b7 00 f0 03 dc 02 c0 0f fb |.?.-............| -00000120 6e bd ff 5c 6d f8 f5 a7 a1 48 0b b7 40 fa ec bb |n..\m....H..@...| -00000130 d5 fc 5a 6d f8 cd 75 f9 bd d9 fa 4b 95 76 93 54 |..Zm..u....K.v.T| -00000140 b2 05 6e 81 24 d9 77 eb f7 7a c3 9f 5f c3 8f cd |..n.$.w..z.._...| -00000150 56 69 da 4d 52 c9 16 b8 05 92 64 ee d6 df 3f ed |Vi.MR.....d...?.| -00000160 ef f7 f7 f6 17 1b fe bf 7e b7 6c 82 e1 cb 3c b1 |........~.l...<.| -00000170 91 bd fe fb e7 cf df ff 7e b7 6c 9d c7 7f bc b3 |........~.l.....| -00000180 fd cd b0 53 6c 95 a6 ed f6 6c d2 32 ba 02 e0 16 |...Sl....l.2....| -00000190 48 97 99 5b bf da 5f ef 3f 7f bf b7 3f 99 54 6d |H..[.._.?...?.Tm| -000001a0 f3 fe f7 cf 7f 4d d3 6f 64 ff fc 7c e7 e7 4f c3 |.....M.od..|..O.| -000001b0 bc f5 e7 2f 7b f9 ab df 29 b6 ca d3 8a ff 36 69 |.../{...).....6i| -000001c0 ff 1b 0a 80 5b 20 5d 96 6e 89 51 ff ce 44 e1 0b |....[ ].n.Q..D..| -000001d0 bc e6 fd e7 7b bf 91 fd f3 9f d8 da bb f5 8b 6b |....{..........k| -000001e0 f1 f7 77 bf 53 6c 95 a7 e5 53 e0 36 ed 58 00 dc |..w.Sl...S.6.X..| -000001f0 02 e9 32 5f 13 36 7c 9d f6 ce cd f8 db 5d f3 fb |..2_.6|......]..| +00000060 7f 7f 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 |..ttt111SSS___99| +00000070 39 72 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c |9rrr...&&&...LLL| +00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff a6 |fff.............| +00000090 fc eb 02 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.......tRNS.@..f| +000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| +000000b0 01 95 2b 0e 1b 00 00 16 14 49 44 41 54 78 9c ed |..+......IDATx..| +000000c0 9d 89 96 e2 3a 0e 86 bb a8 75 66 c2 7a 67 42 41 |....:....uf.zgBA| +000000d0 55 73 c2 fb bf e4 38 76 02 59 9c c4 8b 24 2f d1 |Us....8v.Y...$/.| +000000e0 7f fa 34 e0 45 b2 3f 54 22 84 80 fe fc 61 b1 58 |..4.E.?T"....a.X| +000000f0 2c 16 8b 45 a7 bf c9 28 34 29 18 fd bd 25 22 e6 |,..E...(4)...%".| +00000100 4d 2b e6 4d 2b e6 4d 2b e6 4d 2b e6 4d 2b e6 4d |M+.M+.M+.M+.M+.M| +00000110 ab 35 f0 be 9c 2f d5 b0 a9 df f0 7b ee 8e 1e 8c |.5.../.....{....| +00000120 fd fe 29 5d e9 8e fc ae 82 77 f9 7d f9 9d 07 d1 |..)].....w.}....| +00000130 e5 5d 7e 0f c6 5e 1d 70 5f bf 75 6e 6e eb e0 7d |.]~..^.p_.unn..}| +00000140 1d 37 cd f0 1e 8d fe 19 3e 01 06 fa 59 0f ef df |.7......>...Y...| +00000150 9f ea 7a b9 54 df 62 cb df d7 4a 04 9a 48 10 62 |..z.T.b...J..H.b| +00000160 df a2 e5 5a d5 58 65 a3 6c 10 0f ce a5 48 17 d5 |...Z.Xe.l....H..| +00000170 f9 2c 3a 2e a2 bd 54 e9 44 9a 10 03 7f 7f 7e 7e |.,:...T.D.....~~| +00000180 6f d7 ea 91 4f 94 d5 66 60 6d e7 7c 7e 98 69 5a |o...O..f`m.|~.iZ| +00000190 d5 d4 76 ce a5 2a c5 e3 ac 79 7f 57 df 97 f3 f5 |..v..*...y.W....| +000001a0 52 9d bf eb dd 5e 7e 7f 6e 65 a9 78 9f 2f 97 9f |R....^~.ne.x./..| +000001b0 b2 69 7c f2 ae 1f 97 f5 13 f1 f3 7b a9 69 8a d1 |.i|........{.i..| +000001c0 ca 84 b8 39 5f ea dc fd 8c 6f 69 b5 19 d8 ce 6b |...9_....oi....k| +000001d0 79 ab d6 66 ea 33 be 95 d3 bc 79 cb 8d 5e 44 26 |y..f.3....y..^D&| +000001e0 ae 23 ab 14 af 96 8a b7 68 39 ff 36 8d ff 3c 78 |.#......h9.6.. -libspf2: src/spfd/spfd.c File Reference +libspf2: src/include/spf_dns.h File Reference @@ -39,75 +39,79 @@
-
spfd.c File Reference
+
spf_dns.h File Reference
-
#include <sys/types.h>
-#include <getopt.h>
-#include <unistd.h>
-#include <netdb.h>
-#include <fcntl.h>
-#include <time.h>
-#include <signal.h>
-#include <syslog.h>
-#include <errno.h>
-#include <sys/stat.h>
-#include <sys/socket.h>
-#include <sys/un.h>
-#include <netinet/in.h>
-#include <ctype.h>
-#include <sys/wait.h>
-#include <pthread.h>
-#include "spf.h"
-#href_anchor"el" href="a00044_source.html">spf_dns.h"
-#include "spf_dns_null.h"
-#href_anchor"el" href="a00053_source.html">spf_dns_resolv.h"
-#include "spf_dns_test.h"
-#href_anchor"el" href="a00038_source.html">spf_dns_cache.h"
+
#include "spf_request.h"
+#href_anchor"el" href="a00026_source.html">spf_dns_rr.h"
-Include dependency graph for spfd.c:
+Include dependency graph for spf_dns.h:
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -115,346 +119,613 @@
#define FALSE   0SPF_errcode_t SPF_i_done (SPF_response_t * spf_response,
SPF_result_t result,
SPF_reason_t reason,
SPF_errcode_t err 
- - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00011_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00011_a5e8216fb634ea3e6dbe0d1436d956df1_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00011_a8208bf567458e9076a86d1f29687f82c_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00011_a8208bf567458e9076a86d1f29687f82c_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00011_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00011_a8e81bbd9376ae621c51dc365c9fb9572_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00011_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00011_abec9d9eb3bf26c11e1cb12ba29bc8db0_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00011_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00011_source.html 2023-01-07 18:00:48.671079901 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00011_source.html 2023-01-07 18:00:48.651079755 +0000 @@ -5,7 +5,7 @@ -libspf2: src/spfd/spfd.c Source File +libspf2: src/include/spf_dns.h Source File @@ -39,14 +39,14 @@
-
spfd.c
+
spf_dns.h
-Go to the documentation of this file.
1/*
+Go to the documentation of this file.
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of either:
4 *
@@ -59,1046 +59,142 @@
11 * b) The two-clause BSD license.
12 *
13 * These licenses can be found with the distribution in the file LICENSES
-
14 *
-
15 *
-
16 *
-
17 * This program is really a badly smashed together copy of spfquery.c and
-
18 * the public domain "helloserver" example daemon.
-
19 *
-
20 * The original helloserver code contained the following copyright notice:
-
21 *
-
22 * HELLOSERVER.C - a &#href_anchor"line"> 23 *
-
24 * Implements a skeleton of a single process iterative server
-
25 * daemon.
-
26 *
-
27 * Wherever possible the code adheres to POSIX.
-
28 *
-
29 * David Gillies <daggillies@yahoo.com> Sep 2003
-
30 *
-
31 * Placed in the public domain. Unrestricted use or modification
-
32 * of this code is permitted without attribution to the author.
-
33 */
-
34
-
35
-
36#ifdef __GNUC__
-
37#define _GNU_SOURCE /* for strsignal() */
-
38#endif
-
39
-
40#ifdef HAVE_CONFIG_H
-
41# include "config.h"
-
42#endif
-
43
-
44#ifdef STDC_HEADERS
-
45# include <stdio.h>
-
46# include <stdlib.h> /* malloc / free */
-
47# include <stddef.h>
-
48# include <stdarg.h>
-
49#endif
-
50
-
51#ifdef HAVE_SYS_TYPES_H
-
52#include <sys/types.h> /* types (u_char .. etc..) */
-
53#endif
-
54
-
55#ifdef HAVE_INTTYPES_H
-
56#include <inttypes.h>
-
57#endif
-
58
-
59#ifdef HAVE_STRING_H
-
60# include <string.h> /* strstr / strdup */
-
61#else
-
62# ifdef HAVE_STRINGS_H
-
63# include <strings.h> /* strstr / strdup */
-
64# endif
-
65#endif
-
66
-
67#ifdef HAVE_SYS_SOCKET_H
-
68# include <sys/socket.h> /* inet_ functions / structs */
-
69#endif
-
70#ifdef HAVE_NETINET_IN_H
-
71# include <netinet/in.h> /* inet_ functions / structs */
-
72#endif
-
73#ifdef HAVE_ARPA_INET_H
-
74# include <arpa/inet.h> /* in_addr struct */
-
75#endif
-
76
-
77#ifdef HAVE_ARPA_NAMESER_H
-
78# include <arpa/nameser.h> /* DNS HEADER struct */
-
79#endif
-
80
-
81#include <sys/types.h>
-
82
-
83#ifdef HAVE_PWD_H
-
84#include <pwd.h>
-
85#endif
-
86
-
87#ifdef HAVE_GRP_H
-
88#include <grp.h>
-
89#endif
-
90
-
91#define _GNU_SOURCE
-
92#include <getopt.h>
-
93
-
94#include <unistd.h>
-
95#include <netdb.h>
-
96#include <fcntl.h>
-
97#include <time.h>
-
98#include <signal.h>
-
99#include <syslog.h>
-
100#include <errno.h>
-
101#include <sys/types.h>
-
102#include <sys/stat.h>
-
103#include <sys/socket.h>
-
104#include <sys/un.h>
-
105#include <netinet/in.h>
-
106#include <ctype.h>
-
107#include <sys/wait.h>
-
108
-
109#include <pthread.h>
-
110
-
111#include "spf.h"
-
112#href_anchor"code" href="a00044.html">spf_dns.h"
-
113#include "spf_dns_null.h"
-
114#href_anchor"code" href="a00053.html">spf_dns_resolv.h"
-
115#include "spf_dns_test.h"
-
116#href_anchor"code" href="a00038.html">spf_dns_cache.h"
-
117
+
14 */
+
15
+
16
+
17
+
18
+
19#href_anchor"line"> 20#define INC_SPF_DNS
+
21
+
22
+
67/*
+
68 * For those who don't have <arpa/nameserv.h>
+
69 */
+
70
+
71/* XXX This should use a more sensible define. */
+
72#if !defined( HAVE_NS_TYPE )
+
73
+
74#define ns_t_invalid 0
+
75#define ns_t_a 1
+
76#define ns_t_ns 2
+
77#define ns_t_cname 5
+
78#define ns_t_ptr 12
+
79#define ns_t_mx 15
+
80#define ns_t_txt 16
+
81#define ns_t_aaaa 28
+
82/* #define ns_t_a6 38 */
+
83#define ns_t_any 255
+
85typedef int ns_type;
+
86#endif
+
87
+
88#if ! HAVE_DECL_NS_T_SPF
+
89#define ns_t_spf 99
+
90#endif
+
91
+
92#if ! HAVE_DECL_NS_T_INVALID
+
93#define ns_t_invalid 0
+
94#endif
+
95
+
96
+
97/*
+
98 * For those who don't have <netdb.h>
+
99 */
+
100
+
101#if !defined(HAVE_NETDB_H) && !defined(_WIN32)
+
102#define NETDB_SUCCESS 0
+
103#define HOST_NOT_FOUND 1
+
104#define TRY_AGAIN 2
+
105#define NO_RECOVERY 3
+
106#define NO_DATA 4
+
107#endif
+
108typedef int SPF_dns_stat_t;
+
109
+
110typedef struct SPF_dns_server_struct SPF_dns_server_t;
+
111
+
112#href_anchor"code" href="a00008.html">spf_request.h"
+
113#include "spf_dns_rr.h"
+
114
+
115/*
+
116 * bundle up the info needed to use a dns method
+
117 */
118
-
119#define TRUE 1
-
120#define FALSE 0
-
121
-
122#define bool int
-
123
/usr/share/doc/packages/spf2-apidocs/html/a00012.png differs at offset '19' (PNG image data, 2230 x 411, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00012.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00012.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 08 b6 00 00 01 9b 08 03 00 00 00 e4 a8 7b |...............{| -00000020 2f 00 00 00 72 50 4c 54 45 fe ff ff c3 c3 c3 8b |/...rPLTE.......| -00000030 8b 8b a7 a7 a7 9f 9f 9f bf bf bf df df df 3f 3f |..............??| -00000040 3f 1f 1f 1f 7f 7f 7f 49 49 49 93 93 93 ab ab ab |?......III......| -00000050 7a 7a 7a 63 b8 ff 34 34 34 8c 8c 8c 54 54 54 a8 |zzzc..444...TTT.| -00000060 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 70 e0 e0 |.....888...ppp..| -00000070 e0 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 72 72 |.111SSS___999rrr| -00000080 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 66 99 |...&&&...LLLfff.| -00000090 99 99 d3 d3 d3 00 00 00 ff ff ff 29 3a cd d3 00 |...........):...| -000000a0 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 09 |...tRNS.@..f....| -000000b0 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b 0e |pHYs..........+.| -000000c0 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 0b 7b a3 |... .IDATx....{.| -000000d0 ba b2 a6 b3 cf f1 75 d6 1c 4f 9c c4 c9 8c bb 7b |......u..O.....{| -000000e0 75 77 1e fc ff ff e2 80 00 9b 8b 04 ba 94 40 e0 |uw............@.| -000000f0 f7 dd 7b a5 6d 21 55 15 42 50 9f 85 b0 5f 5e 00 |..{.m!U.BP..._^.| -00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| -00000110 00 00 00 00 00 00 40 f1 77 4a e6 de 59 00 00 00 |......@.wJ..Y...| -00000120 58 32 7f bf a7 03 d9 02 00 00 00 01 20 5b 00 00 |X2.......... [..| -00000130 00 60 21 20 5b 00 00 00 60 21 20 5b 00 00 00 60 |.`! [...`! [...`| -00000140 21 20 5b 00 00 00 60 21 20 5b 00 00 00 60 21 20 |! [...`! [...`! | -00000150 5b 00 00 00 60 21 0c ca 96 5f 3f 3a 05 3f 7f 5f |[...`!..._?:.?._| -00000160 d5 bf 7f 7e 68 b6 b6 36 22 5b 00 00 00 40 98 41 |...~h..6"[...@.A| -00000170 d9 72 fd d9 29 f8 b7 14 26 a5 32 e9 6e 6d 6d 44 |.r..)...&.2.nmmD| -00000180 b6 00 00 00 80 30 83 b2 e5 df 6e c1 ef 9f 0d 65 |.....0....n....e| -00000190 d2 dd da da 88 6c 01 00 00 00 61 1a b2 e5 cf ef |.....l....a.....| -000001a0 ec df 5f bf b2 9f b9 fc f8 f9 6f f6 ef 4f 75 17 |.._.......o..Ou.| -000001b0 48 15 e6 ef ff fc fe fd e7 fb df ec f7 f5 fb e7 |H...............| -000001c0 ef ec c7 8f 1f ea 1e 91 79 63 41 69 04 d9 02 00 |........ycAi....| -000001d0 00 00 32 3c 64 cb cf ec e7 af 1f ff fe ca 7e e4 |..2| +000000e0 eb ac 9e 46 11 61 3f 41 89 b1 ee 3f 7f 00 00 00 |...F.a?A...?....| +000000f0 00 00 c0 84 bf cb 23 77 48 96 c9 df df a5 01 51 |......#wH......Q| +00000100 4a 20 aa 10 20 aa 10 20 aa 10 20 aa 10 20 aa 10 |J .. .. .. .. ..| +00000110 20 aa 10 8c a2 2e 1f 97 66 bc 68 b8 e0 e7 a3 5f | .......f.h...._| +00000120 7a 54 f6 f3 bb d6 95 d5 d5 07 51 3a 8c a2 ea cf |zT........Q:....| +00000130 cb 8f bd a8 fa 73 54 f6 ab d6 96 85 28 57 8c a2 |.....sT.....(W..| +00000140 be 66 03 db 0f fe a4 f4 f7 d0 1c 44 85 d0 13 f5 |.f.........D....| +00000150 f3 dd 7c 5d 2e cd 27 8b ef e7 57 f3 f5 d9 1e cb |..|]..'...W.....| +00000160 58 1c d9 92 af a6 8d 31 5f c8 17 b0 17 1f 35 3b |X......1_.....5;| +00000170 b2 35 1f 1f 6c c5 85 2d af c5 91 8f 57 c1 0a fe |.5..l..-....W...| +00000180 7c 7f ff fc 7e 35 f7 43 9f 2c db d5 25 ca 09 51 ||...~5.C.,..%..Q| +00000190 35 fb 1d a2 66 b9 8b fa 6c 3e 2f 1f 5f 97 e6 e3 |5...f...l>/._...| +000001a0 b3 8d de e5 e7 fb b7 ae 85 a8 8f cb e5 bb 96 0b |................| +000001b0 ef a2 da d7 75 1b f5 ef 9f 4b 2b 97 95 16 55 b0 |....u....K+...U.| +000001c0 ff 3e 2e ed f9 e9 3e a2 ba b2 b2 2e 59 4e ac 11 |.>....>.....YN..| +000001d0 b5 43 d4 0c 03 51 3c 70 ec 9d 5e b7 41 ac d9 54 |.C...Q~...n.~.._.| +000001f0 6c b0 b4 a3 f1 eb 97 95 16 55 b0 ff 7e 79 1d 77 |l........U..~y.w| 00000200 Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00013.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00013.png /usr/share/doc/packages/spf2-apidocs/html/a00014.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00014.html 2023-01-07 18:00:48.707080163 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00014.html 2023-01-07 18:00:48.715080221 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_win32_internal.h File Reference +libspf2: src/include/spf_log.h File Reference @@ -43,49 +43,1336 @@
-
spf_win32_internal.h File Reference
+ +
spf_log.h File Reference
-
+
#include <stdarg.h>
+
+Include dependency graph for spf_log.h:
+
+
+ + + + +
+
This graph shows which files directly or indirectly include this file:
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Go to the source code of this file.

+

Data Structures

struct &#href_anchor"memItemRight" valign="bottom">config_t
&#href_anchor"memitem:">struct  request_t
&#href_anchor"memitem:">struct  state_t
struct &#href_anchor"memItemRight" valign="bottom">SPF_dns_server_t
&#href_anchor"memberdecls">

Macros

#define _GNU_SOURCE
 
#define TRUE   1
 
#define FALSE   0
 
#define bool   int
 
#define FREE(x, f)   do { if ((x)) (f)((x)); (x) = NULL; } while(0)
 
#define FREE_REQUEST(x)   FREE((x), SPF_request_free)
 
#define FREE_RESPONSE(x)   FREE((x), SPF_response_free)
 
#define FREE_STRING(x)   FREE((x), free)
 
#define UNLESS(x)   err = (x); if (err)
 
#define FAIL(x)   do { goto fail; } while(0)
 
#define WARN(x, r)   response_print_errors((x), (r), err)
 
#define DIE(x)   do { fprintf(stderr, "%s\n", x); exit(1); } while(0)
 
#define STREQ(a, b)   (strcmp((a), (b)) == 0)
 
#define NEW_REQUEST   ((request_t *)calloc(1, sizeof(request_t)));
&#href_anchor"memberdecls"> +
#define ns_t_invalid   0
 
#define ns_t_a   1
 
#define ns_t_ns   2
 
#define ns_t_cname   5
 
#define ns_t_ptr   12
 
#define ns_t_mx   15
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#href_anchor"memItemRight" valign="bottom">SPF_error(errmsg)   SPF_errorx( __FILE__, __LINE__, "%s", errmsg )
 
#define SPF_warning(errmsg)   SPF_warningx( __FILE__, __LINE__, "%s", errmsg )
 
#define SPF_info(errmsg)   SPF_infox( __FILE__, __LINE__, "%s", errmsg )
 
#define SPF_debug(errmsg)   SPF_debugx( __FILE__, __LINE__, "%s", errmsg )
 
#define SPF_errorf   SPF_errorx2
 
#define SPF_warningf   SPF_warningx2
 
#define SPF_infof   SPF_infox2
 
#define SPF_debugf   SPF_debugx2
 
#define SPF_DEFAULT_ERROR_HANDLER   SPF_error_stdio
 
#define SPF_DEFAULT_WARNING_HANDLER   SPF_warning_stdio
 
#define SPF_DEFAULT_INFO_HANDLER   SPF_info_stdio
 
#define SPF_DEFAULT_DEBUG_HANDLER   SPF_debug_stdio
 
#define SPF_ASSERT_NOTNULL(x)    do { if ((x) == NULL) SPF_error(#x " is NULL"); } while(0)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

void SPF_errorx (const char *file, int line, const char *format,...) __attribute__((noreturn)) __attribute__((format(printf
 
void void SPF_errorx2 (const char *format,...)
 
void SPF_errorv (const char *file, int line, const char *format, va_list ap) __attribute__((noreturn)) __attribute__((format(printf
 
void SPF_warningx (const char *file, int line, const char *format,...) __attribute__((format(printf
 
void void SPF_warningx2 (const char *format,...)
 
void SPF_warningv (const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
 
void SPF_infox (const char *file, int line, const char *format,...) __attribute__((format(printf
 
void void SPF_infox2 (const char *format,...)
 
void SPF_infov (const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
 
void SPF_debugx (const char *file, int line, const char *format,...) __attribute__((format(printf
 
void void SPF_debugx2 (const char *format,...)
 
void SPF_debugv (const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
 
void SPF_error_stdio (const char *file, int line, const char *errmsg) __attribute__((noreturn))
 
void SPF_warning_stdio (const char *file, int line, const char *errmsg)
 
void SPF_info_stdio (const char *file __attribute__((unused)), int line __attribute__((unused)), const char *errmsg)
 
void SPF_debug_stdio (const char *file, int line, const char *errmsg)
 
void SPF_error_syslog (const char *file, int line, const char *errmsg) __attribute__((noreturn))
 
void SPF_warning_syslog (const char *file, int line, const char *errmsg)
 
void SPF_info_syslog (const char *file __attribute__((unused)), int line __attribute__((unused)), const char *errmsg)
 
void SPF_debug_syslog (const char *file, int line, const char *errmsg)
 
+ + + + + + + + + +

+Variables

void(* SPF_error_handler )(const char *, int, const char *) __attribute__((noreturn))
 
void(* SPF_warning_handler )(const char *, int, const char *)
 
void(* SPF_info_handler )(const char *, int, const char *)
 
void(* SPF_debug_handler )(const char *, int, const char *)
 
+

Detailed Description

+

Error messages and warnings generated internally by the library call these routines. By default, the messages go to stderr, but you can define your own routines to deal with the messages instead.

+

To use the syslog routines, add code such as:

+

openlog(logPrefix,LOG_PID|LOG_CONS|LOG_NDELAY|LOG_NOWAIT,LOG_MAIL);

+

SPF_error_handler = SPF_error_syslog; SPF_warning_handler = SPF_warning_syslog; SPF_info_handler = SPF_info_syslog; SPF_debug_handler = SPF_debug_syslog;

+ Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00014_a6896a665d70ca1fad208c10a85643949_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00014_a6896a665d70ca1fad208c10a85643949_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00014_a8aa1aeca4c20146c2f27132c02b359a8_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00014_a8aa1aeca4c20146c2f27132c02b359a8_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00014_af74d07e90d7d9641f5a7ba22422e2b74_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00014_af74d07e90d7d9641f5a7ba22422e2b74_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00014_afc3ca6390afd845fea81d506cba43460_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00014_afc3ca6390afd845fea81d506cba43460_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00014_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00014_source.html 2023-01-07 18:00:48.743080425 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00014_source.html 2023-01-07 18:00:48.747080453 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_win32_internal.h Source File +libspf2: src/include/spf_log.h Source File @@ -43,7 +43,7 @@
-
spf_win32_internal.h
+
spf_log.h
Go to the documentation of this file.
1/*
@@ -62,35 +62,126 @@
14 */
15
16
-
17#href_anchor"line"> 18
-
19#ifndef INC_SPF_WIN32_INTERNAL
-
20#define INC_SPF_WIN32_INTERNAL
-
21
-
22#include "spf_win32.h"
-
23
-
24#href_anchor"line"> 25
-
26#define inline __inline
-
27
-
28#define NETDB_SUCCESS ERROR_SUCCESS
-
29
-
30#define IN_LOOPBACKNET 127
-
31
-
32#define snprintf _snprintf
-
33#define vsnprintf _vsnprintf
-
34
-
35char *inet_ntop(int af, const void *src, char *dst, size_t size);
-
36int inet_pton(int af, const char *src, void *dst);
-
37
-
38int gethostnameFQDN(char* name, int namelen);
+
17
+
18#href_anchor"line"> 19#define INC_SPF_LOG
+
20
+
37#include <stdarg.h>
+
38
39
-
40#endif
-
41
-
42#endif
- +
40#define SPF_error(errmsg) SPF_errorx( __FILE__, __LINE__, "%s", errmsg )
+
41void SPF_errorx( const char *file, int line, const char *format, ... ) __attribute__ ((noreturn)) __attribute__ ((format (printf, 3, 4)));
+
42void SPF_errorx2( const char *format, ... );
+
43void SPF_errorv( const char *file, int line, const char *format, va_list ap ) __attribute__ ((noreturn)) __attribute__ ((format (printf, 3, 0)));
+
44
+
45#define SPF_warning(errmsg) SPF_warningx( __FILE__, __LINE__, "%s", errmsg )
+
46void SPF_warningx( const char *file, int line, const char *format, ... ) __attribute__ ((format (printf, 3, 4)));
+
47void SPF_warningx2( const char *format, ... );
+
48void SPF_warningv( const char *file, int line, const char *format, va_list ap ) __attribute__ ((format (printf, 3, 0)));
+
49
+
50#define SPF_info(errmsg) SPF_infox( __FILE__, __LINE__, "%s", errmsg )
+
51void SPF_infox( const char *file, int line, const char *format, ... ) __attribute__ ((format (printf, 3, 4)));
+
52void SPF_infox2( const char *format, ... );
+
53void SPF_infov( const char *file, int line, const char *format, va_list ap ) __attribute__ ((format (printf, 3, 0)));
+
54
+
55#define SPF_debug(errmsg) SPF_debugx( __FILE__, __LINE__, "%s", errmsg )
+
56void SPF_debugx( const char *file, int line, const char *format, ... ) __attribute__ ((format (printf, 3, 4)));
+
57void SPF_debugx2( const char *format, ... );
+
58void SPF_debugv( const char *file, int line, const char *format, va_list ap ) __attribute__ ((format (printf, 3, 0)));
+
59
+
60
+
61#if defined( __STDC_VERSION__ ) && __STDC_VERSION__ >= 199901L
+
62
+
63#define SPF_errorf(format, ... ) SPF_errorx( __FILE__, __LINE__, format, ##__VA_ARGS__ )
+
64#define SPF_warningf(format, ... ) SPF_warningx( __FILE__, __LINE__, format, ##__VA_ARGS__ )
+
65#define SPF_infof(format, ... ) SPF_infox( __FILE__, __LINE__, format, ##__VA_ARGS__ )
+
66#define SPF_debugf(format, ... ) SPF_debugx( __FILE__, __LINE__, format, ##__VA_ARGS__ )
+
67
+
68#elif defined( __GNUC__ )
+
69
+
70#define SPF_errorf(format... ) SPF_errorx( __FILE__, __LINE__, format )
+
71#define SPF_warningf(format... ) SPF_warningx( __FILE__, __LINE__, format )
+
72#define SPF_infof(format... ) SPF_infox( __FILE__, __LINE__, format )
+
73#define SPF_debugf(format... ) SPF_debugx( __FILE__, __LINE__, format )
+
74
+
75#else
+
76
+
77#define SPF_errorf SPF_errorx2
+
78#define SPF_warningf SPF_warningx2
+
79#define SPF_infof SPF_infox2
+
80#define SPF_debugf SPF_debugx2
+
81
+
82#endif
+
83
+
84
+
85/* These message handler routines print to stderr or stdout, as appropriate. */
+
86
+
87void SPF_error_stdio( const char *file, int line, const char *errmsg ) __attribute__ ((noreturn));
+
88void SPF_warning_stdio( const char *file, int line, const char *errmsg );
+
89void SPF_info_stdio( const char *file __attribute__ ((unused)), int line __attribute__ ((unused)), const char *errmsg );
+
90void SPF_debug_stdio( const char *file, int line, const char *errmsg );
+
91
+
92
+
93/* These message handler routines send messages to syslog */
+
94
+
95void SPF_error_syslog( const char *file, int line, const char *errmsg ) __attribute__ ((noreturn));
+
96void SPF_warning_syslog( const char *file, int line, const char *errmsg );
+
97void SPF_info_syslog( const char *file __attribute__ ((unused)), int line __attribute__ ((unused)), const char *errmsg );
+
98void SPF_debug_syslog( const char *file, int line, const char *errmsg );
+
99
+
100/* FYI only -- can't be changed without recompiling the library */
+
101#define SPF_DEFAULT_ERROR_HANDLER SPF_error_stdio
+
102#define SPF_DEFAULT_WARNING_HANDLER SPF_warning_stdio
+
103#define SPF_DEFAULT_INFO_HANDLER SPF_info_stdio
+
104#define SPF_DEFAULT_DEBUG_HANDLER SPF_debug_stdio
+
105
+
106
+
107/*
+
108 * You can assign these global function pointers to whatever routines
+
109 * you want to handle the various types of messages. Setting them to NULL
+
110 * will cause the messages to be ignored.
+
111 */
+
112
+
113extern void (*SPF_error_handler)( const char *, int, const char * ) __attribute__ ((noreturn));
+
114extern void (*SPF_warning_handler)( const char *, int, const char * );
+
115extern void (*SPF_info_handler)( const char *, int, const char * );
+
116extern void (*SPF_debug_handler)( const char *, int, const char * );
+
117
+
118#define SPF_ASSERT_NOTNULL(x) \
+
119 do { if ((x) == NULL) SPF_error(#x " is NULL"); } while(0)
+
120
+
121
+
122
+
123
+
124#endif
+
void SPF_debug_syslog(const char *file, int line, const char *errmsg)
+
void(* SPF_warning_handler)(const char *, int, const char *)
+
void SPF_error_stdio(const char *file, int line, const char *errmsg) __attribute__((noreturn))
Definition: spf_log_stdio.c:34
+
void SPF_infox(const char *file, int line, const char *format,...) __attribute__((format(printf
+
void SPF_warning_stdio(const char *file, int line, const char *errmsg)
Definition: spf_log_stdio.c:48
+
void SPF_infov(const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
+
void SPF_debugx(const char *file, int line, const char *format,...) __attribute__((format(printf
+
void SPF_warning_syslog(const char *file, int line, const char *errmsg)
+
void void SPF_infox2(const char *format,...)
Definition: spf_log.c:185
+
void SPF_warningx(const char *file, int line, const char *format,...) __attribute__((format(printf
+
void(* SPF_debug_handler)(const char *, int, const char *)
+
void SPF_info_syslog(const char *file __attribute__((unused)), int line __attribute__((unused)), const char *errmsg)
+
void void SPF_debugx2(const char *format,...)
Definition: spf_log.c:194
+
void SPF_debug_stdio(const char *file, int line, const char *errmsg)
Definition: spf_log_stdio.c:67
+
void SPF_errorv(const char *file, int line, const char *format, va_list ap) __attribute__((noreturn)) __attribute__((format(printf
+
void SPF_info_stdio(const char *file __attribute__((unused)), int line __attribute__((unused)), const char *errmsg)
Definition: spf_log_stdio.c:61
+
void SPF_warningv(const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
+
void SPF_debugv(const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
+
void SPF_errorx(const char *file, int line, const char *format,...) __attribute__((noreturn)) __attribute__((format(printf
+
void SPF_error_syslog(const char *file, int line, const char *errmsg) __attribute__((noreturn))
+
void(* SPF_info_handler)(const char *, int, const char *)
+
void(* SPF_error_handler)(const char *, int, const char *) __attribute__((noreturn))
+
void void SPF_warningx2(const char *format,...)
Definition: spf_log.c:176
+
void void SPF_errorx2(const char *format,...)
Definition: spf_log.c:167
+
#define __attribute__(x)
Definition: spf.h:17
Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00015.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00015.png /usr/share/doc/packages/spf2-apidocs/html/a00016.png differs at offset '19' (PNG image data, 4229 x 235, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00016.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00016.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 10 85 00 00 00 eb 08 03 00 00 00 de 0c 61 |...............a| -00000020 ef 00 00 00 54 50 4c 54 45 fe ff ff 8f 8f 8f a7 |....TPLTE.......| -00000030 a7 a7 63 b8 ff c3 c3 c3 8b 8b 8b 9f 9f 9f bf bf |..c.............| -00000040 bf df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f 63 63 63 |....???......ccc| +00000010 00 00 0f d9 00 00 02 bb 08 03 00 00 00 db 3b 2e |..............;.| +00000020 fa 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 8f |....TPLTE...GGG.| +00000030 8f 8f a7 a7 a7 63 b8 ff c3 c3 c3 8b 8b 8b 9f 9f |.....c..........| +00000040 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f |.......???......| 00000050 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 |ttt111SSS___999r| 00000060 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 |rr...&&&...LLLff| -00000070 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff 03 b1 84 |f...............| -00000080 f6 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 |.....tRNS.@..f..| +00000070 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff be 71 ff |f.............q.| +00000080 3f 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 |?....tRNS.@..f..| 00000090 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 |..pHYs..........| -000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ed dd 89 |+.... .IDATx....| -000000b0 7a a3 40 9a ad eb dc c7 55 1a 77 9f c6 76 da e9 |z.@.....U.w..v..| -000000c0 47 ba ff fb dc 0a 66 49 4c 01 31 ac 5f fe de ae |G.....fIL.1._...| -000000d0 ae 2c 49 08 16 41 40 04 61 04 7f fe 00 00 00 00 |.,I..A@.a.......| -000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| -000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 c0 ba 7f |................| -00000100 8a 72 17 0a 00 00 00 00 00 88 e0 df 8f 1e 46 21 |.r............F!| -00000110 00 00 00 00 00 78 45 8c 42 00 00 00 00 00 80 34 |.....xE.B......4| -00000120 18 85 00 00 00 00 00 00 69 30 0a 01 00 00 00 00 |........i0......| -00000130 00 d2 60 14 02 00 00 00 00 00 a4 c1 28 04 00 00 |..`.........(...| -00000140 00 00 00 48 83 51 08 00 00 00 00 00 90 c6 f4 28 |...H.Q.........(| -00000150 c4 e7 fb e7 e5 f1 ad fb 37 be df fb 53 3f 4c fb |........7...S?L.| -00000160 f1 55 3c cf b2 fb fe c7 df 4b 39 c1 e7 df af af |.U<......K9.....| -00000170 6f 46 21 00 00 00 00 00 78 71 d3 a3 10 c5 c7 e7 |oF!.....xq......| -00000180 f7 c3 5b 13 a3 10 c5 c7 c3 b4 7f 9f 07 21 7e ba |..[..........!~.| -00000190 19 7e 5e 8a cf e2 72 fb ce d7 fb e7 dd 78 05 a3 |.~^...r......x..| -000001a0 10 00 00 00 00 00 bc a2 e9 51 88 bf 03 a3 08 e3 |.........Q......| -000001b0 a3 10 4f 53 7f 3d 0e 4b dc f9 f8 72 93 14 3f 1f |..OS.=.K...r..?.| -000001c0 6e 8e df bd 2f 33 0a 01 00 00 00 00 c0 2b ea 8f |n.../3.......+..| -000001d0 42 7c 7f 5d fe 7e 7e 5e 3e be 3e dc 8f 25 fe 7e |B|.].~~^>.>..%.~| -000001e0 b8 9f 58 7c 5e 6e ff b9 bd 72 83 0d e5 9b e5 1b |..X|^n...r......| -000001f0 b7 17 ef c5 cf c7 d7 e5 fd fd dd fd a2 e2 e2 ae |................| +000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec 9d eb |+.... .IDATx....| +000000b0 96 eb 28 b2 ad f3 87 bb 9d b6 73 9f 76 d5 aa aa |..(.......s.v...| +000000c0 55 c3 7e ff f7 3c d6 cd d6 05 10 97 08 98 a0 f9 |U.~..<..........| +000000d0 8d bd bb 56 4a 22 08 82 10 62 0a 49 fe fa 22 84 |...VJ"...b.I..".| +000000e0 10 42 08 21 84 10 42 08 21 84 10 42 08 21 84 10 |.B.!..B.!..B.!..| +000000f0 42 08 21 84 10 42 08 21 84 10 42 08 21 84 10 42 |B.!..B.!..B.!..B| +00000100 08 21 84 10 42 08 21 84 10 42 08 21 84 10 42 08 |.!..B.!..B.!..B.| +00000110 21 84 10 42 d2 f8 0d 46 e9 78 10 42 08 21 84 10 |!..B...F.x.B.!..| +00000120 42 08 21 75 f1 fb 5f 28 a8 ec 09 21 84 10 42 08 |B.!u.._(...!..B.| +00000130 21 84 90 20 a8 ec 09 21 84 10 42 08 21 84 90 9a |!.. ...!..B.!...| +00000140 a1 b2 27 84 10 42 08 21 84 10 42 6a 86 ca 9e 10 |..'..B.!..Bj....| +00000150 42 08 21 84 10 42 08 a9 19 2a 7b 42 08 21 84 10 |B.!..B...*{B.!..| +00000160 42 08 21 a4 66 a8 ec 09 21 84 10 42 08 21 84 90 |B.!.f...!..B.!..| +00000170 9a a1 b2 27 84 10 42 08 21 84 10 42 6a c6 ad ec |...'..B.!..Bj...| +00000180 7f fd f1 eb b1 de b4 dc f0 cf 1f f3 a3 57 c7 fe |.............W..| +00000190 f9 f7 dd 5c ca ba 95 ca 9e 10 42 08 21 84 10 42 |...\......B.!..B| +000001a0 08 09 c2 ad ec ef 7f fe fa c7 5f d9 df ff 5c 1d |.........._...\.| +000001b0 fb d7 24 ec a9 ec 09 21 84 10 42 08 21 84 10 1d |..$....!..B.!...| +000001c0 dc ca fe af 5d 35 3e 57 f6 9b a3 ff 7e 4b 7d 2a |....]5>W....~K}*| +000001d0 7b 42 08 21 84 10 42 08 21 44 85 b9 b2 ff e7 ef |{B.!..B.!D......| +000001e0 c7 5f bf 7e 3d fe 7c 09 f2 3f ff 7a fc f5 67 f7 |._.~=.|..?.z..g.| +000001f0 78 fd 4b 7c bf b6 fc f5 e8 04 7c bf b1 df f0 fa |x.K|......|.....| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00017.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00017.html 2023-01-07 18:00:48.783080715 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00017.html 2023-01-07 18:00:48.787080744 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf.h File Reference +libspf2: src/include/spf_server.h File Reference @@ -44,385 +44,429 @@
-
spf.h File Reference
+
spf_server.h File Reference
-
#include "spf_lib_version.h"
-#href_anchor"el" href="a00032_source.html">spf_server.h"
-#include "spf_request.h"
-#href_anchor"el" href="a00026_source.html">spf_response.h"
-#include "spf_dns.h"
-#href_anchor"el" href="a00020_source.html">spf_log.h"
+
#include "spf_record.h"
+#href_anchor"el" href="a00011_source.html">spf_dns.h"
-Include dependency graph for spf.h:
+Include dependency graph for spf_server.h:
-
- - - - - - - - - - - +
+ + + + + + + + + + +
This graph shows which files directly or indirectly include this file:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Go to the source code of this file.

+ + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + +

+Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_server_t
&#href_anchor"memberdecls">

Macros

#href_anchor"memItemRight" valign="bottom">__attribute__(x)
 
#define SPF_VERSION   1
 
#define SPF_VER_STR   "v=spf1"
 
#define SPF_C_ERR_MSG_SIZE   (2*80)
 
#define SPF_SMTP_COMMENT_SIZE   (4*80)
 
#define SPF_RECEIVED_SPF_SIZE   (6*80)
 
#define SPF_SYSLOG_SIZE   (10*80)
 
#define SPF_DEFAULT_MAX_DNS_MECH   10
 
#define SPF_DEFAULT_MAX_DNS_PTR   10
 
#define SPF_DEFAULT_MAX_DNS_MX   10
 
#define SPF_DEFAULT_SANITIZE   1
 
#define SPF_DEFAULT_WHITELIST   "include:spf.trusted-forwarder.org"
 
#define SPF_EXP_MOD_NAME   "exp-text"
 
#define SPF_DEFAULT_EXP   "Please%_see%_http://www.openspf.org/Why?id=%{S}&ip=%{C}&receiver=%{R}"
 
#define SPF_DECL_ACCESS_INT(f)
 
+ + +

+Enumerations

enum  SPF_server_dnstype_t { SPF_DNS_RESOLV +, SPF_DNS_CACHE +, SPF_DNS_ZONE + }
 
- - - - - - - Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00017_a031db01ec15327ce45da35d4495bd57a_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00017_a031db01ec15327ce45da35d4495bd57a_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00017_a56126c078ad970b8868c6422be5d7339_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00017_a56126c078ad970b8868c6422be5d7339_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00017_a87f0543d5a62057272b9c71a332a53f0_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00017_a87f0543d5a62057272b9c71a332a53f0_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00017_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00017_a9a8dc407f63649eafd227ede6bc103ed_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00017_aa9339ddf5e3a508af67836913c7ba009_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00017_aa9339ddf5e3a508af67836913c7ba009_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00017_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00017_source.html 2023-01-07 18:00:48.823081006 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00017_source.html 2023-01-07 18:00:48.823081006 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf.h Source File +libspf2: src/include/spf_server.h Source File @@ -43,7 +43,7 @@
-
spf.h
+
spf_server.h
Go to the documentation of this file.
1/*
@@ -61,82 +61,122 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"line"> 17#define __attribute__(x)
-
18#endif
-
19
+
16#href_anchor"line"> 17#define INC_SPF_SERVER
+
18
+
19typedef struct SPF_server_struct SPF_server_t;
20
-
21#ifndef INC_SPF
-
22#define INC_SPF
+
21#href_anchor"code" href="a00050.html">spf_record.h"
+
22#include "spf_dns.h"
23
-
24
-
25#include "spf_lib_version.h"
-
26
-
27#href_anchor"code" href="a00032.html">spf_server.h"
-
28#include "spf_request.h"
-
29#href_anchor"code" href="a00026.html">spf_response.h"
-
30#include "spf_dns.h"
-
31#href_anchor"code" href="a00020.html">spf_log.h"
-
32
-
33
-
34#define SPF_VERSION 1
-
35#define SPF_VER_STR "v=spf1"
-
36
-
37
-
38/* ********************************************************************* */
-
39
-
40
-
46#define SPF_C_ERR_MSG_SIZE (2*80)
-
47#define SPF_SMTP_COMMENT_SIZE (4*80)
-
48#define SPF_RECEIVED_SPF_SIZE (6*80)
-
49#define SPF_SYSLOG_SIZE (10*80)
-
50
-
51
-
52
-
53
-
54/* ********************************************************************* */
-
55
-
59#define SPF_DEFAULT_MAX_DNS_MECH 10
-
60#define SPF_DEFAULT_MAX_DNS_PTR 10
-
61#define SPF_DEFAULT_MAX_DNS_MX 10
-
62#define SPF_DEFAULT_SANITIZE 1
-
63#define SPF_DEFAULT_WHITELIST "include:spf.trusted-forwarder.org"
-
64#define SPF_EXP_MOD_NAME "exp-text"
-
67#define SPF_DEFAULT_EXP "Please%_see%_http://www.openspf.org/Why?id=%{S}&ip=%{C}&receiver=%{R}"
-
68
-
69
+
24#href_anchor"line"> 25/* It is a bad idea to change this for two reasons.
+
26 *
+
27 * First, the obvious reason is the delays caused on the mail server
+
28 * you are running. DNS lookups that timeout can be *very* time
+
29 * consuming, and even successful DNS lookups can take 200-500ms.
+
30 * Many MTAs can't afford to wait long and even 2sec is pretty bad.
+
31 *
+
32 * The second, and more important reason, is the SPF records come from
+
33 * a third party which may be malicious. This third party can direct
+
34 * DNS lookups to be sent to anyone. If there isn't a limit, then it
+
35 * is easy for someone to create a distributed denial of service
+
36 * attack simply by sending a bunch of emails. Unlike the delays on
+
37 * your system caused by many DNS lookups, you might not even notice
+
38 * that you are being used as part of a DDoS attack.
+
39 */
+
40#define SPF_MAX_DNS_MECH 10
+
41#endif
+
42#ifndef SPF_MAX_DNS_PTR
+
43/* It is a bad idea to change this for the same reasons as mentioned
+
44 * above for SPF_MAX_DNS_MECH
+
45 */
+
46#define SPF_MAX_DNS_PTR 10
+
47#endif
+
48#ifndef SPF_MAX_DNS_MX
+
49/* It is a bad idea to change this for the same reasons as mentioned
+
50 * above for SPF_MAX_DNS_MECH
+
51 */
+
52#define SPF_MAX_DNS_MX 10
+
53#endif
+
54
+ +
56 SPF_dns_server_t*resolver;
+
57 SPF_record_t *local_policy;
+
58 SPF_macro_t *explanation;
+
60 char *rec_dom;
+ + + + +
67 int debug;
+ +
69};
70
-
71/* ********************************************************************* */
-
72
-
74const char *SPF_strerror( SPF_errcode_t spf_err );
+
71typedef
+
72enum SPF_server_dnstype_enum {
+ +
75
-
76
-
78const char *SPF_strresult( SPF_result_t result );
-
80const char *SPF_strreason( SPF_reason_t reason );
-
81
-
87void SPF_get_lib_version( int *major, int *minor, int *patch );
+
76SPF_server_t *SPF_server_new(SPF_server_dnstype_t dnstype,int debug);
+
77SPF_server_t *SPF_server_new_dns(SPF_dns_server_t *dns,int debug);
+
78void SPF_server_free(SPF_server_t *sp);
+ +
80 const char *dom);
+ +
82 int sanitize);
+ +
84 const char *exp, SPF_response_t **spf_responsep);
+ +
86 const char *policy, int use_default_whitelist,
+
87 SPF_response_t **spf_responsep);
88
-
89const char *SPF_strrrtype(ns_type rr_type);
-
90
-
91#endif
-
const char * SPF_strerror(SPF_errcode_t spf_err)
Definition: spf_strerror.c:33
-
const char * SPF_strrrtype(ns_type rr_type)
Definition: spf_utils.c:163
-
void SPF_get_lib_version(int *major, int *minor, int *patch)
Definition: spf_utils.c:38
-
const char * SPF_strresult(SPF_result_t result)
Definition: spf_utils.c:81
-
const char * SPF_strreason(SPF_reason_t reason)
Definition: spf_utils.c:128
- - -
SPF_result_t
Definition: spf_response.h:79
-
SPF_reason_t
Definition: spf_response.h:100
-
SPF_errcode_t
Definition: spf_response.h:119
- - - -
int ns_type
Definition: spf_dns.h:85
-
Autogenerated configuration information - do not edit.
+
89SPF_errcode_t SPF_server_get_record(SPF_server_t *spf_server,
+
90 SPF_request_t *spf_request,
+
91 SPF_response_t *spf_response,
+
92 SPF_record_t **spf_recordp);
+
93
+
97#define SPF_DECL_ACCESS_INT(f) \
+
98 SPF_errcode_t \
+
99 SPF_server_set_ ## f(SPF_server_t *spf_server, int n); \
+
100 int \
+
101 SPF_server_get_ ## f(SPF_server_t *spf_server);
+
102
+ + + +
106
+
107#endif
+ +
SPF_server_t * SPF_server_new(SPF_server_dnstype_t dnstype, int debug)
Definition: spf_server.c:132
+
SPF_server_dnstype_t
Definition: spf_server.h:72
+
@ SPF_DNS_RESOLV
Definition: spf_server.h:73
+
@ SPF_DNS_CACHE
Definition: spf_server.h:73
+
@ SPF_DNS_ZONE
Definition: spf_server.h:73
+
SPF_errcode_t SPF_server_set_explanation(SPF_server_t *sp, const char *exp, SPF_response_t **spf_responsep)
Definition: spf_server.c:235
+
void SPF_server_free(SPF_server_t *sp)
Definition: spf_server.c:200
+
SPF_errcode_t SPF_server_get_record(SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t **spf_recordp)
Definition: spf_server.c:316
+
#define SPF_DECL_ACCESS_INT(f)
Definition: spf_server.h:97
+
SPF_errcode_t SPF_server_set_sanitize(SPF_server_t *sp, int sanitize)
Definition: spf_server.c:228
+
SPF_errcode_t SPF_server_set_localpolicy(SPF_server_t *sp, const char *policy, int use_default_whitelist, SPF_response_t **spf_responsep)
Definition: spf_server.c:267
+
SPF_errcode_t SPF_server_set_rec_dom(SPF_server_t *sp, const char *dom)
Definition: spf_server.c:215
+
SPF_server_t * SPF_server_new_dns(SPF_dns_server_t *dns, int debug)
Definition: spf_server.c:180
+
SPF_errcode_t
Definition: spf_response.h:119
+ +
#define debug
+ + +
SPF_macro_t * explanation
Definition: spf_server.h:58
+ + + + + /usr/share/doc/packages/spf2-apidocs/html/a00018.png differs at offset '20' (PNG image data, 659 x 336, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00018.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00018.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 02 93 00 00 01 50 08 03 00 00 00 d4 5c 05 |.......P......\.| -00000020 48 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |H...fPLTE......T| +00000010 00 00 02 11 00 00 01 9b 08 03 00 00 00 4d 83 32 |.............M.2| +00000020 03 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....fPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| -00000040 70 e0 e0 e0 a7 a7 a7 c3 c3 c3 8b 8b 8b 63 b8 ff |p............c..| +00000040 70 e0 e0 e0 a7 a7 a7 63 b8 ff c3 c3 c3 8b 8b 8b |p......c........| 00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| 00000060 7f 7f 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 |..ttt111SSS___99| 00000070 39 72 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c |9rrr...&&&...LLL| -00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff a6 |fff.............| -00000090 fc eb 02 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.......tRNS.@..f| +00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff f6 |fff.............| +00000090 c9 70 53 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.pS....tRNS.@..f| 000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| -000000b0 01 95 2b 0e 1b 00 00 19 85 49 44 41 54 78 9c ed |..+......IDATx..| -000000c0 9d 89 96 a3 b0 8e 86 6b eb aa 9e 99 b0 de 19 6a |.......k.......j| -000000d0 ef 43 de ff 25 c7 0b 49 58 bc c8 bb 02 fa 4f 9f |.C..%..IX.....O.| -000000e0 54 62 6c 23 a4 af 65 1b 08 79 78 20 91 48 24 12 |Tbl#..e..yx .H$.| -000000f0 89 44 22 91 48 24 d2 2e f4 5b 44 a5 8f 9a 84 59 |.D".H$...[D....Y| -00000100 bf ff 0a 88 98 24 19 44 4c 92 b0 89 98 24 61 13 |.....$.DL....$a.| -00000110 31 49 c2 26 62 92 84 4d c4 24 09 9b 88 49 12 36 |1I.&b..M.$...I.6| -00000120 99 99 fc 7c ff 1c d7 45 cb 82 9f f7 79 ed 55 dd |...|...E....y.U.| -00000130 8f ef 41 d1 84 98 24 19 65 66 72 f8 f8 fc 81 33 |..A...$.efr....3| -00000140 39 7c ac ea 7e 0d aa 26 c4 24 c9 28 33 93 5f db |9|..~..&.$.(3._.| -00000150 22 03 93 9b da df 1f c4 24 c9 59 73 26 7f be c7 |".......$.Ys&...| -00000160 af cf cf f1 83 a1 f4 f1 35 7e 7d f0 c1 98 f1 c4 |........5~}.....| -00000170 4a be 46 8e 9e 28 14 05 ec c3 fb c0 86 e6 f1 fd |J.F..(..........| -00000180 9d 6d f8 64 e5 83 1c ba 45 17 ac e2 cf f7 f7 cf |.m.d....E.......| -00000190 bf af f1 32 76 0f ac 98 98 24 c1 34 63 f2 63 fc |...2v....$.4c.c.| -000001a0 f8 7c ff fa 1c df 3f 38 45 9f 3f df ff 86 41 32 |.|....?8E.?...A2| -000001b0 f9 fe f9 f9 3d 4c 85 37 26 f9 e7 81 c3 fa fd f3 |....=L.7&.......| -000001c0 c9 39 66 b5 65 17 ec cf fb 27 9f 4b 5e f3 a4 ec |.9f.e....'.K^...| -000001d0 80 98 24 41 b4 64 52 00 f4 c9 66 86 3c ab 0d 6c |..$A.dR...f.<..l| -000001e0 85 23 99 64 25 ef 3f 53 e1 7f ae 4c fe f0 cf 5f |.#.d%.?S...L..._| -000001f0 ef 2c 5d f2 1c fb f5 8f d5 96 5d b0 3f ff 44 1f |.,].......].?.D.| +000000b0 01 95 2b 0e 1b 00 00 1a 78 49 44 41 54 78 9c ed |..+.....xIDATx..| +000000c0 9d 89 76 a3 ba b2 86 d3 49 3a c9 f5 bd 8c fb 5c |..v.....I:.....\| +000000d0 32 ee 2c f9 fd 5f f2 68 c0 98 41 80 a6 92 4a 50 |2.,.._.h..A...JP| +000000e0 ff ea e5 d8 42 54 95 4a 1f 92 00 d3 7e 78 20 91 |....BT.J....~x .| +000000f0 48 24 12 89 44 22 91 32 d1 bf e8 95 3a 43 67 d3 |H$..D".2....:Cg.| +00000100 bf bf c8 45 44 44 16 11 41 9a 8a 88 20 4d 45 44 |...EDD..A... MED| +00000110 90 a6 22 22 48 53 11 11 a4 a9 88 08 d2 54 db 44 |..""HS.......T.D| +00000120 7c be 7f b2 79 d1 b4 e0 e7 7d 5c 7b 56 f7 e3 bb ||...y....}\{V...| +00000130 b3 ec ff 85 3b 22 22 b6 b6 89 e8 3e 3e 7f b6 fb |....;""....>>...| +00000140 6c 4c 44 f7 31 ab fb 65 0b 04 11 91 5e db 44 7c |lLD.1..e....^.D|| +00000150 ed f6 d9 98 88 45 ed ef 39 22 bb 22 22 92 6b 4c |.....E..9"."".kL| +00000160 c4 cf 37 fb fa fc 64 1f bc 23 3f be d8 d7 87 98 |..7...d..#?.....| +00000170 06 78 17 f1 92 2f 26 3a 5e 16 ca 02 fe e1 bd e3 |.x.../&:^.......| +00000180 93 02 7b 7f e7 1b 3e 79 79 a7 26 0d 69 82 57 fc |..{...>yy.&.i.W.| +00000190 f9 fe fe f9 fd 62 f7 59 43 6d e8 ab 4a 1f 5f 3f |.....b.YCm..J._?| +000001a0 8a 99 51 91 20 a2 e3 15 89 88 84 1a 11 f1 c1 3e |..Q. ..........>| +000001b0 3e df bf 3e d9 fb 87 e8 98 cf 9f ef df ae 53 44 |>..>..........SD| +000001c0 bc 7f 7e 7e 77 7d e1 9d 08 f1 b9 13 a8 7c ff 7c |..~~w}.......|.|| +000001d0 8a ee e4 b5 95 09 fe e7 fd 53 ac 21 ee 63 44 bf |.........S.!.cD.| +000001e0 a1 af 2a 7d 74 df 62 a1 31 29 fa 1d 7c 11 11 c9 |..*}t.b.1)..|...| +000001f0 34 25 42 f6 09 3f 94 3b 71 98 76 7c 5d a9 88 e0 |4%B..?.;q.v|]...| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00019.png differs at offset '19' (PNG image data, 4057 x 624, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00019.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00019.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 0f d9 00 00 02 70 08 03 00 00 00 a0 14 c0 |.......p........| -00000020 8d 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 8f |....TPLTE...GGG.| -00000030 8f 8f a7 a7 a7 63 b8 ff c3 c3 c3 8b 8b 8b 9f 9f |.....c..........| +00000010 00 00 0e 55 00 00 02 70 08 03 00 00 00 9d a3 f6 |...U...p........| +00000020 c2 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 a7 |....TPLTE...GGG.| +00000030 a7 a7 8f 8f 8f 63 b8 ff c3 c3 c3 8b 8b 8b 9f 9f |.....c..........| 00000040 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f |.......???......| 00000050 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 |ttt111SSS___999r| 00000060 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 |rr...&&&...LLLff| -00000070 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff be 71 ff |f.............q.| -00000080 3f 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 |?....tRNS.@..f..| +00000070 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff 24 d1 9b |f............$..| +00000080 5b 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 |[....tRNS.@..f..| 00000090 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 |..pHYs..........| -000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec bd eb |+.... .IDATx....| -000000b0 ba eb a6 b2 b5 db 7f 38 d3 dd 76 ff f6 72 32 92 |.......8..v..r2.| -000000c0 8c 3c f6 fd df e7 b6 75 b2 0e 88 63 15 34 50 7b |.<.....u...c.4P{| -000000d0 9f b5 66 46 97 a1 28 a0 84 68 02 49 5f 5f 84 10 |..fF..(..h.I__..| -000000e0 42 08 21 84 10 42 08 21 84 10 42 08 21 84 10 42 |B.!..B.!..B.!..B| -000000f0 08 21 84 10 42 08 21 84 10 42 08 21 84 10 42 08 |.!..B.!..B.!..B.| -00000100 21 84 10 42 08 21 84 10 42 08 21 84 10 42 08 21 |!..B.!..B.!..B.!| -00000110 84 10 42 88 20 bf 8b 50 ba d6 84 10 42 08 21 84 |..B. ..P....B.!.| -00000120 10 42 48 2b fc fe af 00 54 f6 84 10 42 08 21 84 |.BH+....T...B.!.| -00000130 10 42 88 10 54 f6 84 10 42 08 21 84 10 42 48 cd |.B..T...B.!..BH.| -00000140 50 d9 13 42 08 21 84 10 42 08 21 35 43 65 4f 08 |P..B.!..B.!5CeO.| -00000150 21 84 10 42 08 21 84 d4 0c 95 3d 21 84 10 42 08 |!..B.!....=!..B.| -00000160 21 84 10 52 33 54 f6 84 10 42 08 21 84 10 42 48 |!..R3T...B.!..BH| -00000170 cd 50 d9 13 42 08 21 84 10 42 08 21 35 63 57 f6 |.P..B.!..B.!5cW.| -00000180 bf fe fc f5 58 1f 5a 1e f8 f7 cf 79 ea 55 da bf |....X.Z....y.U..| -00000190 fe b9 1b b2 50 d9 13 42 08 21 84 10 42 08 21 62 |....P..B.!..B.!b| -000001a0 d8 95 fd fd af 5f ff fa 2b fb fb 5f ab b4 7f df |....._..+.._....| -000001b0 4d 59 a8 ec 09 21 84 10 42 08 21 84 90 14 4e a7 |MY...!..B.!...N.| -000001c0 d9 1f 76 65 ff f7 f6 90 45 d9 6f 52 ff f3 97 87 |..ve....E.oR....| -000001d0 b2 5f b8 43 08 21 84 10 42 08 21 84 10 07 a7 37 |._.C.!..B.!....7| -000001e0 d3 5f 73 65 ff ef 3f 8f bf 7f fd 7a fc f5 12 e4 |._se..?....z....| -000001f0 7f fd fd f8 fb af f7 f6 fa 97 2a 7f 1d f9 fb f1 |..........*.....| +000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec 9d 89 |+.... .IDATx....| +000000b0 92 eb b6 0e a6 7b aa 7c af db 6d cf 5c 27 27 c9 |.....{.|..m.\''.| +000000c0 49 d9 ef ff 9e 63 6d b6 16 2e 20 09 90 20 f9 7f |I....cm... .. ..| +000000d0 95 ca 69 4b 24 08 ae c2 2f ca d6 d7 17 00 00 00 |..iK$.../.......| +000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| +* +00000100 00 00 00 00 00 00 00 00 00 40 3d fc d6 4f e9 26 |.........@=..O.&| +00000110 02 00 00 00 00 00 00 00 60 e5 f7 bf da 81 aa 04 |........`.......| +00000120 00 00 00 00 00 00 00 bd 40 55 02 00 00 00 00 00 |........@U......| +00000130 00 00 88 07 aa 12 00 00 00 00 00 00 00 40 3c 50 |.............@ -libspf2: src/include/spf_log.h File Reference +libspf2: src/include/spf_dns_cache.h File Reference @@ -44,911 +44,71 @@
-
spf_log.h File Reference
+Functions
+
spf_dns_cache.h File Reference
-
#include <stdarg.h>
-
-Include dependency graph for spf_log.h:
-
-
- - - - -
-
+
This graph shows which files directly or indirectly include this file:
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
+ + + + + +

Go to the source code of this file.

Functions

const char * SPF_strerror (SPF_errcode_t spf_err)
 
const char * SPF_strresult (SPF_result_t result)
 
const char * SPF_strreason (SPF_reason_t reason)
 
void SPF_get_lib_version (int *major, int *minor, int *patch)
- - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Macros

#href_anchor"memItemRight" valign="bottom">SPF_error(errmsg)   SPF_errorx( __FILE__, __LINE__, "%s", errmsg )
 
#define SPF_warning(errmsg)   SPF_warningx( __FILE__, __LINE__, "%s", errmsg )
 
#define SPF_info(errmsg)   SPF_infox( __FILE__, __LINE__, "%s", errmsg )
 
#define SPF_debug(errmsg)   SPF_debugx( __FILE__, __LINE__, "%s", errmsg )
 
#define SPF_errorf   SPF_errorx2
 
#define SPF_warningf   SPF_warningx2
 
#define SPF_infof   SPF_infox2
 
#define SPF_debugf   SPF_debugx2
 
#define SPF_DEFAULT_ERROR_HANDLER   SPF_error_stdio
 
#define SPF_DEFAULT_WARNING_HANDLER   SPF_warning_stdio
 
#define SPF_DEFAULT_INFO_HANDLER   SPF_info_stdio
 
#define SPF_DEFAULT_DEBUG_HANDLER   SPF_debug_stdio
 
#define SPF_ASSERT_NOTNULL(x)    do { if ((x) == NULL) SPF_error(#x " is NULL"); } while(0)
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Functions

void SPF_errorx (const char *file, int line, const char *format,...) __attribute__((noreturn)) __attribute__((format(printf
 
void void SPF_errorx2 (const char *format,...)
 
void SPF_errorv (const char *file, int line, const char *format, va_list ap) __attribute__((noreturn)) __attribute__((format(printf
 
void SPF_warningx (const char *file, int line, const char *format,...) __attribute__((format(printf
 
void void SPF_warningx2 (const char *format,...)
 
void SPF_warningv (const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
 
void SPF_infox (const char *file, int line, const char *format,...) __attribute__((format(printf
 
void void SPF_infox2 (const char *format,...)
 
void SPF_infov (const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
 
void SPF_debugx (const char *file, int line, const char *format,...) __attribute__((format(printf
 
void void SPF_debugx2 (const char *format,...)
 
void SPF_debugv (const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
 
void SPF_error_stdio (const char *file, int line, const char *errmsg) __attribute__((noreturn))
 
void SPF_warning_stdio (const char *file, int line, const char *errmsg)
 
void SPF_info_stdio (const char *file __attribute__((unused)), int line __attribute__((unused)), const char *errmsg)
 
void SPF_debug_stdio (const char *file, int line, const char *errmsg)
 
void SPF_error_syslog (const char *file, int line, const char *errmsg) __attribute__((noreturn))
 
void SPF_warning_syslog (const char *file, int line, const char *errmsg)
 
void SPF_info_syslog (const char *file __attribute__((unused)), int line __attribute__((unused)), const char *errmsg)
 
void SPF_debug_syslog (const char *file, int line, const char *errmsg)
 
- - - - - - - - - + + + + + +

-Variables

void(* SPF_error_handler )(const char *, int, const char *) __attribute__((noreturn))
 
void(* SPF_warning_handler )(const char *, int, const char *)
 
void(* SPF_info_handler )(const char *, int, const char *)
 
void(* SPF_debug_handler )(const char *, int, const char *)
 
SPF_dns_server_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_cache_new (SPF_dns_server_t *layer_below, const char *name, int debug, int cache_bits)
 
void SPF_dns_cache_set_ttl (SPF_dns_server_t *spf_dns_server, time_t min_ttl, time_t err_ttl, time_t txt_ttl, time_t rdns_ttl)
 
void SPF_dns_set_conserve_cache (SPF_dns_server_t *spf_dns_server, int conserve_cache)
 

Detailed Description

-

Error messages and warnings generated internally by the library call these routines. By default, the messages go to stderr, but you can define your own routines to deal with the messages instead.

-

To use the syslog routines, add code such as:

-

openlog(logPrefix,LOG_PID|LOG_CONS|LOG_NDELAY|LOG_NOWAIT,LOG_MAIL);

-

SPF_error_handler = SPF_error_syslog; SPF_warning_handler = SPF_warning_syslog; SPF_info_handler = SPF_info_syslog; SPF_debug_handler = SPF_debug_syslog;

- -

Definition in file spf_log.h.

-

Macro Definition Documentation

- -

◆ SPF_ASSERT_NOTNULL

- -
-
- - - - - - - - -
#define SPF_ASSERT_NOTNULL( x)    do { if ((x) == NULL) SPF_error(#x " is NULL"); } while(0)
/usr/share/doc/packages/spf2-apidocs/html/a00020_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00020_source.html 2023-01-07 18:00:48.895081530 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00020_source.html 2023-01-07 18:00:48.891081501 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_log.h Source File +libspf2: src/include/spf_dns_cache.h Source File @@ -43,7 +43,7 @@
-
spf_log.h
+
spf_dns_cache.h
Go to the documentation of this file.
1/*
@@ -63,121 +63,26 @@
15
16
17
-
18#href_anchor"line"> 19#define INC_SPF_LOG
-
20
-
37#include <stdarg.h>
-
38
-
39
-
40#define SPF_error(errmsg) SPF_errorx( __FILE__, __LINE__, "%s", errmsg )
-
41void SPF_errorx( const char *file, int line, const char *format, ... ) __attribute__ ((noreturn)) __attribute__ ((format (printf, 3, 4)));
-
42void SPF_errorx2( const char *format, ... );
-
43void SPF_errorv( const char *file, int line, const char *format, va_list ap ) __attribute__ ((noreturn)) __attribute__ ((format (printf, 3, 0)));
-
44
-
45#define SPF_warning(errmsg) SPF_warningx( __FILE__, __LINE__, "%s", errmsg )
-
46void SPF_warningx( const char *file, int line, const char *format, ... ) __attribute__ ((format (printf, 3, 4)));
-
47void SPF_warningx2( const char *format, ... );
-
48void SPF_warningv( const char *file, int line, const char *format, va_list ap ) __attribute__ ((format (printf, 3, 0)));
-
49
-
50#define SPF_info(errmsg) SPF_infox( __FILE__, __LINE__, "%s", errmsg )
-
51void SPF_infox( const char *file, int line, const char *format, ... ) __attribute__ ((format (printf, 3, 4)));
-
52void SPF_infox2( const char *format, ... );
-
53void SPF_infov( const char *file, int line, const char *format, va_list ap ) __attribute__ ((format (printf, 3, 0)));
-
54
-
55#define SPF_debug(errmsg) SPF_debugx( __FILE__, __LINE__, "%s", errmsg )
-
56void SPF_debugx( const char *file, int line, const char *format, ... ) __attribute__ ((format (printf, 3, 4)));
-
57void SPF_debugx2( const char *format, ... );
-
58void SPF_debugv( const char *file, int line, const char *format, va_list ap ) __attribute__ ((format (printf, 3, 0)));
+
18
+
19#href_anchor"line"> 20#define INC_SPF_DNS_CACHE
+
21
+
22
+
57SPF_dns_server_t *SPF_dns_cache_new(SPF_dns_server_t *layer_below,
+
58 const char *name, int debug, int cache_bits);
59
60
-
61#if defined( __STDC_VERSION__ ) && __STDC_VERSION__ >= 199901L
-
62
-
63#define SPF_errorf(format, ... ) SPF_errorx( __FILE__, __LINE__, format, ##__VA_ARGS__ )
-
64#define SPF_warningf(format, ... ) SPF_warningx( __FILE__, __LINE__, format, ##__VA_ARGS__ )
-
65#define SPF_infof(format, ... ) SPF_infox( __FILE__, __LINE__, format, ##__VA_ARGS__ )
-
66#define SPF_debugf(format, ... ) SPF_debugx( __FILE__, __LINE__, format, ##__VA_ARGS__ )
-
67
-
68#elif defined( __GNUC__ )
-
69
-
70#define SPF_errorf(format... ) SPF_errorx( __FILE__, __LINE__, format )
-
71#define SPF_warningf(format... ) SPF_warningx( __FILE__, __LINE__, format )
-
72#define SPF_infof(format... ) SPF_infox( __FILE__, __LINE__, format )
-
73#define SPF_debugf(format... ) SPF_debugx( __FILE__, __LINE__, format )
-
74
-
75#else
-
76
-
77#define SPF_errorf SPF_errorx2
-
78#define SPF_warningf SPF_warningx2
-
79#define SPF_infof SPF_infox2
-
80#define SPF_debugf SPF_debugx2
-
81
-
82#endif
-
83
-
84
-
85/* These message handler routines print to stderr or stdout, as appropriate. */
-
86
-
87void SPF_error_stdio( const char *file, int line, const char *errmsg ) __attribute__ ((noreturn));
-
88void SPF_warning_stdio( const char *file, int line, const char *errmsg );
-
89void SPF_info_stdio( const char *file __attribute__ ((unused)), int line __attribute__ ((unused)), const char *errmsg );
-
90void SPF_debug_stdio( const char *file, int line, const char *errmsg );
-
91
-
92
-
93/* These message handler routines send messages to syslog */
-
94
-
95void SPF_error_syslog( const char *file, int line, const char *errmsg ) __attribute__ ((noreturn));
-
96void SPF_warning_syslog( const char *file, int line, const char *errmsg );
-
97void SPF_info_syslog( const char *file __attribute__ ((unused)), int line __attribute__ ((unused)), const char *errmsg );
-
98void SPF_debug_syslog( const char *file, int line, const char *errmsg );
-
99
-
100/* FYI only -- can't be changed without recompiling the library */
-
101#define SPF_DEFAULT_ERROR_HANDLER SPF_error_stdio
-
102#define SPF_DEFAULT_WARNING_HANDLER SPF_warning_stdio
-
103#define SPF_DEFAULT_INFO_HANDLER SPF_info_stdio
-
104#define SPF_DEFAULT_DEBUG_HANDLER SPF_debug_stdio
-
105
-
106
-
107/*
-
108 * You can assign these global function pointers to whatever routines
-
109 * you want to handle the various types of messages. Setting them to NULL
-
110 * will cause the messages to be ignored.
-
111 */
-
112
-
113extern void (*SPF_error_handler)( const char *, int, const char * ) __attribute__ ((noreturn));
-
114extern void (*SPF_warning_handler)( const char *, int, const char * );
-
115extern void (*SPF_info_handler)( const char *, int, const char * );
-
116extern void (*SPF_debug_handler)( const char *, int, const char * );
-
117
-
118#define SPF_ASSERT_NOTNULL(x) \
-
119 do { if ((x) == NULL) SPF_error(#x " is NULL"); } while(0)
+
98void SPF_dns_cache_set_ttl( SPF_dns_server_t *spf_dns_server,
+
99 time_t min_ttl, time_t err_ttl,
+
100 time_t txt_ttl, time_t rdns_ttl );
+
101
+
118void SPF_dns_set_conserve_cache( SPF_dns_server_t *spf_dns_server,
+
119 int conserve_cache );
120
-
121
-
122
-
123
-
124#endif
-
#define __attribute__(x)
Definition: spf.h:17
-
void SPF_debug_syslog(const char *file, int line, const char *errmsg)
-
void(* SPF_warning_handler)(const char *, int, const char *)
-
void SPF_error_stdio(const char *file, int line, const char *errmsg) __attribute__((noreturn))
Definition: spf_log_stdio.c:34
-
void SPF_infox(const char *file, int line, const char *format,...) __attribute__((format(printf
-
void SPF_warning_stdio(const char *file, int line, const char *errmsg)
Definition: spf_log_stdio.c:48
-
void SPF_infov(const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
-
void SPF_debugx(const char *file, int line, const char *format,...) __attribute__((format(printf
-
void SPF_warning_syslog(const char *file, int line, const char *errmsg)
-
void void SPF_infox2(const char *format,...)
Definition: spf_log.c:185
-
void SPF_warningx(const char *file, int line, const char *format,...) __attribute__((format(printf
-
void(* SPF_debug_handler)(const char *, int, const char *)
-
void SPF_info_syslog(const char *file __attribute__((unused)), int line __attribute__((unused)), const char *errmsg)
-
void void SPF_debugx2(const char *format,...)
Definition: spf_log.c:194
-
void SPF_debug_stdio(const char *file, int line, const char *errmsg)
Definition: spf_log_stdio.c:67
-
void SPF_errorv(const char *file, int line, const char *format, va_list ap) __attribute__((noreturn)) __attribute__((format(printf
-
void SPF_info_stdio(const char *file __attribute__((unused)), int line __attribute__((unused)), const char *errmsg)
Definition: spf_log_stdio.c:61
-
void SPF_warningv(const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
-
void SPF_debugv(const char *file, int line, const char *format, va_list ap) __attribute__((format(printf
-
void SPF_errorx(const char *file, int line, const char *format,...) __attribute__((noreturn)) __attribute__((format(printf
-
void SPF_error_syslog(const char *file, int line, const char *errmsg) __attribute__((noreturn))
-
void(* SPF_info_handler)(const char *, int, const char *)
-
void(* SPF_error_handler)(const char *, int, const char *) __attribute__((noreturn))
-
void void SPF_warningx2(const char *format,...)
Definition: spf_log.c:176
-
void void SPF_errorx2(const char *format,...)
Definition: spf_log.c:167
+
121#endif
+
SPF_dns_server_t * SPF_dns_cache_new(SPF_dns_server_t *layer_below, const char *name, int debug, int cache_bits)
+
void SPF_dns_cache_set_ttl(SPF_dns_server_t *spf_dns_server, time_t min_ttl, time_t err_ttl, time_t txt_ttl, time_t rdns_ttl)
+
void SPF_dns_set_conserve_cache(SPF_dns_server_t *spf_dns_server, int conserve_cache)
+
#define debug
- -
spf_dns_windns.h File Reference
+
spf_win32_internal.h File Reference
- -

Go to the source code of this file.

- - - - - - - - -

-Functions

SPF_dns_config_t&#href_anchor"memItemRight" valign="bottom">SPF_dns_create_config_windns (SPF_dns_config_t layer_below, int debug)
 
void SPF_dns_reset_config_windns (SPF_dns_config_t spfdcid)
 
void SPF_dns_destroy_config_windns (SPF_dns_config_t spfdcid)
 
-

Function Documentation

- -

◆ SPF_dns_create_config_windns()

- -
-
- - - - - - - - - - - - - - - - - - -
SPF_dns_config_t SPF_dns_create_config_windns (SPF_dns_config_t layer_below,
int debug 
)
-
- -
-
- -

◆ SPF_dns_destroy_config_windns()

- -
-
- - - - - - - - -
void SPF_dns_destroy_config_windns (SPF_dns_config_t spfdcid)
-
- -
-
- -

◆ SPF_dns_reset_config_windns()

- -
-
- - - - - - - - -
void SPF_dns_reset_config_windns (SPF_dns_config_t spfdcid)
-
- +
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

Go to the source code of this file.

/usr/share/doc/packages/spf2-apidocs/html/a00023_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00023_source.html 2023-01-07 18:00:48.939081850 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00023_source.html 2023-01-07 18:00:48.939081850 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_dns_windns.h Source File +libspf2: src/include/spf_win32_internal.h Source File @@ -43,7 +43,7 @@
-
spf_dns_windns.h
+
spf_win32_internal.h
Go to the documentation of this file.
1/*
@@ -62,45 +62,35 @@
14 */
15
16
-
17
-
18
-
19#href_anchor"line"> 20#define INC_SPF_DNS_WINDNS
+
17#href_anchor"line"> 18
+
19#ifndef INC_SPF_WIN32_INTERNAL
+
20#define INC_SPF_WIN32_INTERNAL
21
-
22/* For an overview of the DNS layer system, see spf_dns.h */
+
22#include "spf_win32.h"
23
-
24/*
-
25 * The WinDNS layer is an interface to the Windows DNS API.
-
26 *
-
27 * While multiple WinDNS layers can be created, I can't see much
-
28 * use for more than one.
-
29 */
-
30
-
31/*
-
32 * These routines take care of creating/destroying/etc. the objects
-
33 * that hold the DNS layer configuration. spfdcid objects contain
-
34 * malloc'ed data, so they must be destroyed when you are finished
-
35 * with them, or you will leak memory.
-
36 */
+
24#href_anchor"line"> 25
+
26#define inline __inline
+
27
+
28#define NETDB_SUCCESS ERROR_SUCCESS
+
29
+
30#define IN_LOOPBACKNET 127
+
31
+
32#define snprintf _snprintf
+
33#define vsnprintf _vsnprintf
+
34
+
35char *inet_ntop(int af, const void *src, char *dst, size_t size);
+
36int inet_pton(int af, const char *src, void *dst);
37
-
38/*
-
39 * if debugging is enabled, information about the results from
-
40 * WinDNS will be displayed. This information is often not passed
-
41 * on to (and not needed by) the higher level DNS layers.
-
42 */
-
43SPF_dns_config_t SPF_dns_create_config_windns( SPF_dns_config_t layer_below, int debug );
-
44void SPF_dns_reset_config_windns( SPF_dns_config_t spfdcid );
-
45void SPF_dns_destroy_config_windns( SPF_dns_config_t spfdcid );
-
46
-
47
-
48#endif
-
void SPF_dns_reset_config_windns(SPF_dns_config_t spfdcid)
-
SPF_dns_config_t SPF_dns_create_config_windns(SPF_dns_config_t layer_below, int debug)
-
void SPF_dns_destroy_config_windns(SPF_dns_config_t spfdcid)
-
#define debug
+
38int gethostnameFQDN(char* name, int namelen);
+
39
+
40#endif
+
41
+
42#endif
+
Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00025.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00025.png /usr/share/doc/packages/spf2-apidocs/html/a00026.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00026.html 2023-01-07 18:00:48.975082111 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00026.html 2023-01-07 18:00:48.967082053 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_response.h File Reference +libspf2: src/include/spf_dns_rr.h File Reference @@ -45,72 +45,70 @@
-
spf_response.h File Reference
+
spf_dns_rr.h File Reference
-
#include "spf.h"
-#href_anchor"el" href="a00035_source.html">spf_request.h"
+
#include "spf_dns.h"
-Include dependency graph for spf_response.h:
+Include dependency graph for spf_dns_rr.h:
-
- - - - - - - - - - - +
+ + + + + + + + + + +
This graph shows which files directly or indirectly include this file:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -118,489 +116,31 @@ - - + + - - - - -

Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_error_t
&#href_anchor"memitem:">struct  SPF_response_t
union &#href_anchor"memItemRight" valign="bottom">SPF_dns_rr_data_t
&#href_anchor"memitem:">struct  SPF_dns_rr_t
&#href_anchor"memberdecls"> -

-Enumerations

enum  SPF_result_t {
-  SPF_RESULT_INVALID = 0 -, SPF_RESULT_NEUTRAL -, SPF_RESULT_PASS -, SPF_RESULT_FAIL -,
-  SPF_RESULT_SOFTFAIL -, SPF_RESULT_NONE -, SPF_RESULT_TEMPERROR -, SPF_RESULT_PERMERROR -
- }
 
enum  SPF_reason_t {
-  SPF_REASON_NONE = 0 -, SPF_REASON_FAILURE -, SPF_REASON_LOCALHOST -, SPF_REASON_LOCAL_POLICY -,
-  SPF_REASON_MECH -, SPF_REASON_DEFAULT -, SPF_REASON_2MX -
- }
 
enum  SPF_errcode_t {
-  SPF_E_SUCCESS = 0 -, SPF_E_NO_MEMORY -, SPF_E_NOT_SPF -, SPF_E_SYNTAX -,
-  SPF_E_MOD_W_PREF -, SPF_E_INVALID_CHAR -, SPF_E_UNKNOWN_MECH -, SPF_E_INVALID_OPT -,
-  SPF_E_INVALID_CIDR -, SPF_E_MISSING_OPT -, SPF_E_INTERNAL_ERROR -, SPF_E_INVALID_ESC -,
-  SPF_E_INVALID_VAR -, SPF_E_BIG_SUBDOM -, SPF_E_INVALID_DELIM -, SPF_E_BIG_STRING -,
-  SPF_E_BIG_MECH -, SPF_E_BIG_MOD -, SPF_E_BIG_DNS -, SPF_E_INVALID_IP4 -,
-  SPF_E_INVALID_IP6 Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00026_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00026_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00026_ac6060857bbd9aafeb41ac938439dc995_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00026_ac6060857bbd9aafeb41ac938439dc995_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00026_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00026_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00026_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00026_source.html 2023-01-07 18:00:49.015082402 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00026_source.html 2023-01-07 18:00:49.007082344 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_response.h Source File +libspf2: src/include/spf_dns_rr.h Source File @@ -43,7 +43,7 @@
-
spf_response.h
+
spf_dns_rr.h
Go to the documentation of this file.
1/*
@@ -61,254 +61,81 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"line"> 17#define INC_SPF_RESPONSE
+
16
+
17
18
-
78typedef
-
79enum SPF_result_enum {
- - - - - +
19#href_anchor"line"> 20#define INC_SPF_DNS_RR
+
21
+
22#include "spf_dns.h"
+
23
+
30typedef
+
31union
+
32{
+
33 struct in_addr a;
+
34 char ptr[1];
+
35 char mx[1];
+
36 char txt[1];
+
37 struct in6_addr aaaa;
+ +
39
+
49typedef
+
50struct SPF_dns_rr_struct
+
51{
+
52 /* query information */
+
53 char *domain;
+ + +
58 /* answer information */
+
59 int num_rr;
+ +
61 size_t *rr_buf_len;
+ +
64 time_t ttl;
+
65 time_t utc_ttl;
+ +
68 /* misc information */
+
69 void *hook;
+
70 SPF_dns_server_t *source;
+ +
72
+ +
74void SPF_dns_rr_free(SPF_dns_rr_t *spfrr);
+
75SPF_dns_rr_t *SPF_dns_rr_new_init(SPF_dns_server_t *spf_dns_server,
+
76 const char *domain,
+
77 ns_type rr_type, int ttl,
+
78 SPF_dns_stat_t herrno);
+
79SPF_dns_rr_t *SPF_dns_rr_new_nxdomain(SPF_dns_server_t *spf_dns_server,
+
80 const char *domain);
+
81
+ +
83 int idx, size_t len );
+
85
- - - - -
90
-
99typedef
-
100enum SPF_reason_enum {
- - - - - - - - -
109
-
118typedef
-
119enum SPF_errcode_t {
-
120 SPF_E_SUCCESS = 0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
155
-
156typedef
-
157struct SPF_error_struct
-
158{
- -
160 char *message;
- - -
163
-
164typedef struct SPF_response_struct SPF_response_t;
-
165
-
166#href_anchor"code" href="a00017.html">spf.h"
-
167#include "spf_request.h"
-
168
- -
170 /* Structure variables */
-
171 SPF_request_t *spf_request;
-
172 SPF_record_t *spf_record_exp;
-
173
-
174 /* The answer itself. */
- - - -
178
- - - - - -
184
-
185 /* The errors */
- -
187 unsigned short errors_size;
-
188 unsigned short errors_length;
-
189 unsigned short num_errors;
-
191 /* Stuff which lets us get there. */
- -
193};
-
194
-
195
-
196SPF_response_t *SPF_response_new(SPF_request_t *spf_request);
-
197void SPF_response_free(SPF_response_t *rp);
-
198SPF_response_t *SPF_response_combine(SPF_response_t *main,
-
199 SPF_response_t *r2mx);
-
200
-
201 /* Query functions for elements of the result */
-
202SPF_result_t SPF_response_result(SPF_response_t *rp);
-
203SPF_reason_t SPF_response_reason(SPF_response_t *rp);
-
204SPF_errcode_t SPF_response_errcode(SPF_response_t *rp);
-
205const char *SPF_response_get_received_spf(SPF_response_t *rp);
-
206const char *SPF_response_get_received_spf_value(SPF_response_t*rp);
-
207const char *SPF_response_get_header_comment(SPF_response_t *rp);
-
208const char *SPF_response_get_smtp_comment(SPF_response_t *rp);
-
209const char *SPF_response_get_explanation(SPF_response_t *rp);
-
210
-
212int SPF_response_messages(SPF_response_t *rp);
-
214int SPF_response_errors(SPF_response_t *rp);
-
216int SPF_response_warnings(SPF_response_t *rp);
-
218SPF_error_t *SPF_response_message(SPF_response_t *rp, int idx);
-
219
- -
221const char * SPF_error_message(SPF_error_t *err);
- -
223
- -
227 SPF_errcode_t code,
/usr/share/doc/packages/spf2-apidocs/html/a00027.png differs at offset '20' (PNG image data, 509 x 336, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00027.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00027.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 01 fd 00 00 01 50 08 03 00 00 00 82 90 57 |.......P.......W| -00000020 8a 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....fPLTE......T| +00000010 00 00 01 25 00 00 02 7b 08 03 00 00 00 92 d5 77 |...%...{.......w| +00000020 5f 00 00 00 63 50 4c 54 45 fe ff ff 8c 8c 8c 54 |_...cPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| -00000040 70 e0 e0 e0 a7 a7 a7 c3 c3 c3 8b 8b 8b 63 b8 ff |p............c..| -00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| -00000060 7f 7f 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 |..ttt111SSS___99| -00000070 39 72 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c |9rrr...&&&...LLL| -00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff a6 |fff.............| -00000090 fc eb 02 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.......tRNS.@..f| -000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| -000000b0 01 95 2b 0e 1b 00 00 16 06 49 44 41 54 78 9c ed |..+......IDATx..| -000000c0 9d 87 76 a4 3a 12 86 c7 d9 bb 4b be bb d8 6d 7b |..v.:.....K...m{| -000000d0 7c e8 f7 7f c9 55 20 08 90 84 aa 24 11 eb 3f 33 ||....U ....$..?3| -000000e0 dd 46 28 14 f5 29 21 42 ff f9 43 22 91 48 24 12 |.F(..)!B..C".H$.| -000000f0 89 44 ba 8a fe 1e 51 5b 3b ed 34 fa fb 7b 3c 11 |.D....Q[;.4..{<.| -00000100 fd 50 22 fa 57 16 d1 bf b2 88 fe 95 45 f4 af 2c |.P".W.......E..,| -00000110 a2 7f 65 11 fd 2b cb 4e ff f6 71 6b a6 41 e3 80 |..e..+.N..qk.A..| -00000120 9f 0f 35 f6 24 ee e7 77 8d 67 6c 28 f0 97 e8 87 |..5.$..w.gl(....| -00000130 93 9d 7e fd 79 fb b1 c3 50 e9 d7 9f 93 b8 5f 01 |..~.y...P....._.| -00000140 e0 13 fd 88 b2 d3 ff 5a 84 a1 d2 9f c5 fe 9e 56 |.......Z.......V| -00000150 07 8c 88 7e 3c a9 f4 7f be 9b af db ad f9 64 d0 |...~<.........d.| -00000160 3e bf 9a af 4f de 95 33 df b3 90 af 86 43 16 81 |>...O..3.....C..| -00000170 22 80 6d 7c d4 ac 63 6f 3e 3e d8 8e 1b 0b af 65 |".m|..co>>.....e| -00000180 c7 2f b2 60 11 7f be bf 7f 7e bf 9a be e7 97 b9 |./.`.....~......| -00000190 b6 11 47 91 78 ae 3c 5a 57 8a dc d9 45 15 49 6b |..G.x..n..'| -000001b0 f7 f8 ed e7 fb b7 ae 25 fd 8f db ed bb 6e 03 07 |.......%.....n..| -000001c0 fa 7c bb e6 c0 be 7f 6e 9c 2d 8b 2d b3 60 5f 1f |.|.....n.-.-.`_.| -000001d0 37 3e e6 0f 6d 5f e4 da 46 1c 47 ba f1 c0 e6 b3 |7>..m_..F.G.....| -000001e0 2b a5 dd d9 e5 29 93 8a e2 89 7e 78 8d e9 0b 67 |+....)....~x...g| -000001f0 b3 96 57 f3 b6 56 b3 39 9f a4 cf 42 3e 7e da c0 |..W..V.9...B>~..| +00000040 70 e0 e0 e0 c3 c3 c3 8b 8b 8b 63 b8 ff 9f 9f 9f |p.........c.....| +00000050 bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f 74 |......???......t| +00000060 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 72 |tt111SSS___999rr| +00000070 72 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 66 |r...&&&...LLLfff| +00000080 99 99 99 d3 d3 d3 00 00 00 ff ff ff 09 1b c1 13 |................| +00000090 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 |....tRNS.@..f...| +000000a0 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b |.pHYs..........+| +000000b0 0e 1b 00 00 16 4d 49 44 41 54 78 9c ed 9d 89 72 |.....MIDATx....r| +000000c0 b3 3a 12 85 1d 67 9d c1 eb cc 90 38 c9 4d e1 f7 |.:...g.....8.M..| +000000d0 7f ca d1 06 66 91 44 6b 97 50 9f ba f5 c7 16 4d |....f.Dk.P.....M| +000000e0 4b fd 5d 21 db 80 8f 77 3b 14 0a 85 42 a1 a8 fe |K.]!...w;...B...| +000000f0 c9 5f a9 11 11 fd f3 97 bb 90 12 44 48 09 22 a4 |._.........DH.".| +00000100 04 11 52 82 08 29 41 84 94 20 ca 9f d2 ed f3 d6 |..R..)A.. ......| +00000110 cd 9b a6 0d bf 9f e3 e8 59 ec d7 4f ab 8a 55 f6 |........Y..O..U.| +00000120 38 ef af 00 4a ed d7 ed 17 4e a9 fd 9a c5 7e b7 |8...J....N....~.| +00000130 ca 58 95 4a a4 f4 bd 5a c6 b8 f2 45 f4 cf 14 db |.X.J...Z...E....| +00000140 36 28 fd fe 74 df b7 5b f7 45 8a fb fa ee be bf |6(..t..[.E......| +00000150 e8 21 44 46 4d 5a be 3b 5a 20 6b 64 0d e4 c9 67 |.!DFMZ.;Z kd...g| +00000160 4b 0e a8 ee f3 93 6c b8 91 f6 96 1f 70 2c 05 09 |K.....l.....p,..| +00000170 fc fd f9 f9 fd fb ee 1e 47 9c 88 ed 73 f1 b8 81 |........G...s...| +00000180 0c e9 92 f7 4b 1e b7 64 53 c6 94 be ba af db e7 |....K..dS.......| +00000190 f7 ad fb fc a2 63 bd fd fe fc b5 2d a7 f4 79 bb |.....c.....-..y.| +000001a0 fd b4 a2 f1 41 89 3e 6f 69 c9 3f bf 37 5a 21 89 |....A.>oi.?.7Z!.| +000001b0 e6 29 c8 9f cf 1b 5d 93 1e 73 a9 8f 15 b9 44 dc |.)....]..s....D.| +000001c0 b0 91 75 f9 f9 c5 1f b3 ce 72 a6 c4 86 49 fe 1f |..u......r...I..| +000001d0 b7 b4 82 96 ac dd 9c 12 69 f9 fc 15 8d ff 19 28 |........i......(| +000001e0 fd d2 e7 df 9f 64 9a d0 79 f8 fd 47 a2 79 0a f2 |.....d..y..G.y..| +000001f0 e7 8f e5 78 50 ea 63 45 2e 11 37 50 ba 89 7f fe |...xP.cE..7P....| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00028.png differs at offset '19' (PNG image data, 4553 x 517, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00028.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00028.png (hex) @@ -1,6 +1,6 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 11 c9 00 00 02 05 08 03 00 00 00 20 d5 32 |............. .2| -00000020 da 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 8f |....TPLTE...GGG.| +00000010 00 00 0e 61 00 00 02 70 08 03 00 00 00 fc bb d4 |...a...p........| +00000020 80 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 8f |....TPLTE...GGG.| 00000030 8f 8f a7 a7 a7 63 b8 ff c3 c3 c3 8b 8b 8b 9f 9f |.....c..........| 00000040 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f |.......???......| 00000050 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 |ttt111SSS___999r| @@ -8,26 +8,26 @@ 00000070 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff be 71 ff |f.............q.| 00000080 3f 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 |?....tRNS.@..f..| 00000090 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 |..pHYs..........| -000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec bd 09 |+.... .IDATx....| -000000b0 b3 e3 36 cf 46 79 ab e6 e6 f3 76 67 5e 27 9d a4 |..6.Fy....vg^'..| -000000c0 53 f6 ff ff 9f 63 5b 5e b4 51 e2 4e 00 3a a7 52 |S....c[^.Q.N.:.R| -000000d0 e9 b6 2c 91 00 01 52 e4 d3 94 fc f5 05 00 00 00 |..,...R.........| +000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec 9d 8d |+.... .IDATx....| +000000b0 92 eb a8 0e ad fb 56 e5 9c 74 ba fb de 93 99 3d |......V..t.....=| +000000c0 33 7b aa fb fd df f3 26 b6 93 f8 07 b0 10 92 10 |3{.....&........| +000000d0 78 7d 35 35 bb 93 80 10 32 60 96 c1 f6 db 1b 00 |x}55....2`......| 000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * -00000100 00 00 00 00 00 00 00 00 00 00 99 f8 ad 91 d6 8d |................| -00000110 06 00 00 00 00 00 00 00 d0 84 df ff e9 03 25 07 |..............%.| -00000120 00 00 00 00 00 00 00 b6 09 4a 0e 00 00 00 00 00 |.........J......| -00000130 00 00 80 16 50 72 00 00 00 00 00 00 00 00 b4 80 |....Pr..........| -00000140 92 03 00 00 00 00 00 00 00 a0 05 94 1c 00 00 00 |................| -00000150 00 00 00 00 00 2d a0 e4 00 00 00 00 00 00 00 00 |.....-..........| -00000160 68 01 25 07 00 00 00 00 00 00 00 40 0b cb 4a ce |h.%........@..J.| -00000170 af 3f 7f 5d c6 87 86 07 fe fd b3 7f f6 e8 dc bf |.?.]............| -00000180 fe 39 c7 eb 35 8e 0a ff 43 c9 01 00 00 00 00 00 |.9..5...C.......| -00000190 00 80 ad b2 ac e4 9c ff fa f5 ef b2 b0 d2 57 72 |..............Wr| -000001a0 ce 7f 8d ce fd 3b 83 90 83 92 03 00 00 00 00 00 |.....;..........| -000001b0 00 00 f0 64 59 c9 f9 7b 55 58 e9 2b 39 93 b3 ff |...dY..{UX.+9...| -000001c0 19 4b 3b 31 a0 e4 00 00 00 00 00 00 00 00 74 f4 |.K;1..........t.| -000001d0 95 9c 7f ff b9 fc fd eb d7 e5 af 7f fe fa ef af |................| -000001e0 bf 2f 7f ff 75 7f 5c ea d7 e5 f6 df ed d3 5d b0 |./..u.\.......].| -000001f0 79 1c 7c 1c b8 7d f8 f3 fc df 5f ff 5c fe fc f3 |y.|..}...._.\...| +00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 ad f3 db |................| +00000110 3f b5 43 04 00 00 00 00 00 00 00 80 c4 ef 7f bd |?.C.............| +00000120 03 85 09 00 00 00 00 00 00 00 6d 00 85 09 00 00 |..........m.....| +00000130 00 00 00 00 00 40 06 28 4c 00 00 00 00 00 00 00 |.....@.(L.......| +00000140 00 32 40 61 02 00 00 00 00 00 00 00 90 01 0a 13 |.2@a............| +00000150 00 00 00 00 00 00 00 80 0c 50 98 00 00 00 00 00 |.........P......| +00000160 00 00 00 64 80 c2 04 00 00 00 00 00 00 00 20 43 |...d.......... C| +00000170 5a 61 fe fa e3 d7 f7 fa ab e5 17 ff fc 31 4f bd |Za...........1O.| +00000180 4a fb e7 df d7 58 da 68 89 eb f2 a0 30 01 00 00 |J....X.h....0...| +00000190 00 00 00 00 a0 11 d2 0a f3 fa e7 af 7f e8 0a f3 |................| +000001a0 fa e7 2a ed 5f d7 68 da 18 50 98 00 00 00 00 00 |..*._.h..P......| +000001b0 00 00 d0 2a 69 85 f9 d7 ae 04 9c ab c6 4d ea bf |...*i........M..| +000001c0 97 92 13 0a 13 00 00 00 00 00 00 00 7a 66 ae 30 |............zf.0| +000001d0 ff f9 fb fb af 5f bf be ff bc 09 c3 3f ff fa fe |....._......?...| +000001e0 eb cf fb b6 d7 9b e2 bb 7d f3 d7 f7 5d 1c 0e 5f |........}...].._| +000001f0 0e 5f dc 3e fc 71 fd f7 cf bf bf ff f8 e3 f6 c3 |._.>.q..........| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00029.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00029.html 2023-01-07 18:00:49.051082664 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00029.html 2023-01-07 18:00:49.055082693 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_dns_null.h File Reference +libspf2: src/include/spf_lib_version.h File Reference @@ -44,72 +44,127 @@
-
spf_dns_null.h File Reference
+Macros
+
spf_lib_version.h File Reference
+ +

Autogenerated configuration information - do not edit. +More...

This graph shows which files directly or indirectly include this file:
-
- - - - - +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Go to the source code of this file.

- - - + + + + + + +

-Functions

SPF_dns_server_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_null_new (SPF_dns_server_t *layer_below, const char *name, int debug)
 

+Macros

#href_anchor"memItemRight" valign="bottom">SPF_LIB_VERSION_MAJOR   1
 
#define SPF_LIB_VERSION_MINOR   2
 
#define SPF_LIB_VERSION_PATCH   11
 
-

Function Documentation

- -

◆ SPF_dns_null_new()

+

Detailed Description

+

Autogenerated configuration information - do not edit.

+ +

Definition in file spf_lib_version.h.

+

Macro Definition Documentation

+ +

◆ SPF_LIB_VERSION_MAJOR

- - - - - - - - - - + +
SPF_dns_server_t * SPF_dns_null_new (SPF_dns_server_t * layer_below,
const char * name, #define SPF_LIB_VERSION_MAJOR   1
+
+ +

Definition at line 8 of file spf_lib_version.h.

+ +
+
+ +

◆ SPF_LIB_VERSION_MINOR

+ +
+
+ - - - - + +
int debug #define SPF_LIB_VERSION_MINOR   2
+
+ +

Definition at line 9 of file spf_lib_version.h.

+ +
+
+ +

◆ SPF_LIB_VERSION_PATCH

+ +
+
+ - - - +
)#define SPF_LIB_VERSION_PATCH   11
-

Definition at line 59 of file spf_dns_null.c.

- -

References debug, and NULL.

+

Definition at line 10 of file spf_lib_version.h.

/usr/share/doc/packages/spf2-apidocs/html/a00029_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00029_source.html 2023-01-07 18:00:49.071082810 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00029_source.html 2023-01-07 18:00:49.071082810 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_dns_null.h Source File +libspf2: src/include/spf_lib_version.h Source File @@ -43,65 +43,17 @@
-
spf_dns_null.h
+
spf_lib_version.h
-Go to the documentation of this file.
1/*
-
2 * This program is free software; you can redistribute it and/or modify
-
3 * it under the terms of either:
-
4 *
-
5 * a) The GNU Lesser General Public License as published by the Free
-
6 * Software Foundation; either version 2.1, or (at your option) any
-
7 * later version,
-
8 *
-
9 * OR
-
10 *
-
11 * b) The two-clause BSD license.
-
12 *
-
13 * These licenses can be found with the distribution in the file LICENSES
-
14 */
-
15
-
16
-
17
-
18
-
19#href_anchor"line"> 20#define INC_SPF_DNS_NULL
-
21
-
22/* For an overview of the DNS layer system, see spf_dns.h */
-
23
-
24/* The null DNS layer is really just a minimal DNS layer. It is
-
25 * useful when you don't want to do any real DNS lookups, or when you
-
26 * want to be able to get debugging information about the requests
-
27 * flowing between DNS layers.
-
28 *
-
29 * Multiple null DNS layers can be created, which can be useful for
-
30 * debugging purposes.
-
31 */
-
32
-
33
-
34/*
-
35 * These routines take care of creating/destroying/etc. the objects
-
36 * that hold the DNS layer configuration. spfdcid objects contain
-
37 * malloc'ed data, so they must be destroyed when you are finished
-
38 * with them, or you will leak memory.
-
39 */
-
40
-
41/*
-
42 * if debugging is enabled, information about the DNS queries sent to
-
43 * the lower DNS layer, and the results returned from that layer will
-
44 * be displayed.
-
45 *
-
46 * The "name" will be used when displaying debugging information so
-
47 * that you can tell which location in the stack of DNS layers
-
48 * generated the output.
-
49 */
-
50
-
51SPF_dns_server_t *SPF_dns_null_new( SPF_dns_server_t *layer_below,
-
52 const char *name, int debug);
-
53
-
54
-
55#endif
-
SPF_dns_server_t * SPF_dns_null_new(SPF_dns_server_t *layer_below, const char *name, int debug)
Definition: spf_dns_null.c:59
-
#define debug
+Go to the documentation of this file.
1
+
5#href_anchor"line"> 6#define INC_SPF_VERSION
+
7
+
8#define SPF_LIB_VERSION_MAJOR 1
+
9#define SPF_LIB_VERSION_MINOR 2
+
10#define SPF_LIB_VERSION_PATCH 11
+
11
+
12#endif
-
spf_server.h File Reference
+
spf_internal.h File Reference
-
#include "spf_record.h"
-#href_anchor"el" href="a00044_source.html">spf_dns.h"
+
#include "spf_record.h"
-Include dependency graph for spf_server.h:
+Include dependency graph for spf_internal.h:
-
- - - - - - - - - - - +
+ + + + + + + + + + + +
This graph shows which files directly or indirectly include this file:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + +

Go to the source code of this file.

- - - - - -

-Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_server_t
&#href_anchor"memberdecls">

Macros

#define SPF_DECL_ACCESS_INT(f)
 
- - - + + + + + + + + + + + + + + + + + +

-Enumerations

enum  SPF_server_dnstype_t { SPF_DNS_RESOLV -, SPF_DNS_CACHE -, SPF_DNS_ZONE - }
 
#href_anchor"memItemRight" valign="bottom">TRUE   1
 
#define FALSE   0
 
#define NULL   ((void *)0)
 
#define array_elem(x)   ((long int)(sizeof( x ) / sizeof( *x )))
 
#define SPF_MAX_DNS_MECH   10
 
#define SPF_MAX_DNS_PTR   10
 
#define SPF_MAX_DNS_MX   10
 
#define _ALIGN_SZ   4
 
#define SPF_WRAP_FUNCTION(name, proto, args)
 
- - - - - - - - - - - - - - - - - - - - - - + + + + + +

Functions

SPF_server_t * SPF_server_new (SPF_server_dnstype_t dnstype, int debug)
 
SPF_server_t * SPF_server_new_dns (SPF_dns_server_t *dns, int debug)
 
void SPF_server_free (SPF_server_t *sp)
 
SPF_errcode_t SPF_server_set_rec_dom (SPF_server_t *sp, const char *dom)
 
SPF_errcode_t SPF_server_set_sanitize (SPF_server_t *sp, int sanitize)
 
SPF_errcode_t SPF_server_set_explanation (SPF_server_t *sp, const char *exp, SPF_response_t **spf_responsep)
 
SPF_errcode_t SPF_server_set_localpolicy (SPF_server_t *sp, const char *policy, int use_default_whitelist, SPF_response_t **spf_responsep)
 
SPF_errcode_t SPF_server_get_record (SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t **spf_recordp)
 
 SPF_DECL_ACCESS_INT (max_dns_mech)
 
 SPF_DECL_ACCESS_INT (max_dns_ptr)
 
 SPF_DECL_ACCESS_INT (max_dns_mx)
 
char * SPF_sanitize (SPF_server_t *spf_server, char *str)
 
void SPF_print_sizeof (void)
 
SPF_errcode_t SPF_recalloc (char **bufp, size_t *buflenp, size_t buflen) __attribute__((warn_unused_result))
 

Macro Definition Documentation

- -

◆ SPF_DECL_ACCESS_INT

+ +

◆ _ALIGN_SZ

/usr/share/doc/packages/spf2-apidocs/html/a00032_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00032_source.html 2023-01-07 18:00:49.131083246 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00032_source.html 2023-01-07 18:00:49.131083246 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_server.h Source File +libspf2: src/include/spf_internal.h Source File @@ -43,7 +43,7 @@
-
spf_server.h
+
spf_internal.h
Go to the documentation of this file.
1/*
@@ -61,118 +61,138 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"line"> 17#define INC_SPF_SERVER
+
16
+
17
18
-
19typedef struct SPF_server_struct SPF_server_t;
-
20
-
21#href_anchor"code" href="a00071.html">spf_record.h"
-
22#include "spf_dns.h"
-
23
-
24#href_anchor"line"> 25/* It is a bad idea to change this for two reasons.
-
26 *
-
27 * First, the obvious reason is the delays caused on the mail server
-
28 * you are running. DNS lookups that timeout can be *very* time
-
29 * consuming, and even successful DNS lookups can take 200-500ms.
-
30 * Many MTAs can't afford to wait long and even 2sec is pretty bad.
-
31 *
-
32 * The second, and more important reason, is the SPF records come from
-
33 * a third party which may be malicious. This third party can direct
-
34 * DNS lookups to be sent to anyone. If there isn't a limit, then it
-
35 * is easy for someone to create a distributed denial of service
-
36 * attack simply by sending a bunch of emails. Unlike the delays on
-
37 * your system caused by many DNS lookups, you might not even notice
-
38 * that you are being used as part of a DDoS attack.
-
39 */
-
40#define SPF_MAX_DNS_MECH 10
-
41#endif
-
42#ifndef SPF_MAX_DNS_PTR
-
43/* It is a bad idea to change this for the same reasons as mentioned
-
44 * above for SPF_MAX_DNS_MECH
-
45 */
-
46#define SPF_MAX_DNS_PTR 10
-
47#endif
-
48#ifndef SPF_MAX_DNS_MX
-
49/* It is a bad idea to change this for the same reasons as mentioned
-
50 * above for SPF_MAX_DNS_MECH
-
51 */
-
52#define SPF_MAX_DNS_MX 10
-
53#endif
-
54
- -
56 SPF_dns_server_t*resolver;
-
57 SPF_record_t *local_policy;
-
58 SPF_macro_t *explanation;
-
60 char *rec_dom;
- - - - -
67 int debug;
- -
69};
-
70
-
71typedef
-
72enum SPF_server_dnstype_enum {
- - -
75
-
76SPF_server_t *SPF_server_new(SPF_server_dnstype_t dnstype,int debug);
-
77SPF_server_t *SPF_server_new_dns(SPF_dns_server_t *dns,int debug);
-
78void SPF_server_free(SPF_server_t *sp);
- -
80 const char *dom);
- -
82 int sanitize);
- -
84 const char *exp, SPF_response_t **spf_responsep);
- -
86 const char *policy, int use_default_whitelist,
-
87 SPF_response_t **spf_responsep);
-
88
-
89SPF_errcode_t SPF_server_get_record(SPF_server_t *spf_server,
-
90 SPF_request_t *spf_request,
-
91 SPF_response_t *spf_response,
-
92 SPF_record_t **spf_recordp);
-
93
-
97#define SPF_DECL_ACCESS_INT(f) \
-
98 SPF_errcode_t \
-
99 SPF_server_set_ ## f(SPF_server_t *spf_server, int n); \
-
100 int \
-
101 SPF_server_get_ ## f(SPF_server_t *spf_server);
-
102
- - - +
19#href_anchor"line"> 20#define INC_SPF_INTERNAL
+
21
+
22#ifndef TRUE
+
23#define TRUE 1
+
24#define FALSE 0
+
25#endif
+
26
+
27#ifndef NULL
+
28#define NULL ((void *)0)
+
29#endif
+
30
+
31#define array_elem(x) ((long int)(sizeof( x ) / sizeof( *x )))
+
32
+
33
+
34/*
+
35 * misc macros to make the code look cleaner than it really is
+
36 */
+
37
+
38#ifndef SPF_MAX_DNS_MECH
+
55#define SPF_MAX_DNS_MECH 10
+
56#endif
+
57#ifndef SPF_MAX_DNS_PTR
+
62#define SPF_MAX_DNS_PTR 10
+
63#endif
+
64#ifndef SPF_MAX_DNS_MX
+
69#define SPF_MAX_DNS_MX 10
+
70#endif
+
71
+
72#if 1
+
73#define _ALIGN_SZ 4
+
74static inline size_t _align_sz(size_t s)
+
75 { return (s + (_ALIGN_SZ - 1 - (((s - 1) & (_ALIGN_SZ - 1))))); }
+
76static inline char * _align_ptr(char *s)
+
77 { return (s + (_ALIGN_SZ - 1 - ((((size_t)s - 1) & (_ALIGN_SZ - 1))))); }
+
78#else
+
79static inline size_t _align_sz(size_t s) { return s; }
+
80static inline char * _align_ptr(char *s) { return s; }
+
81#endif
+
82
+
83#include "spf_record.h"
+
84
+
85/* FIXME: need to make these network/compiler portable */
+
86/* FIXME: Several of these duplicate each other. Bad. */
+
87static inline size_t SPF_mech_data_len( SPF_mech_t * mech )
+
88 { return (mech->mech_type == MECH_IP4)
+
89 ? sizeof( struct in_addr )
+
90 : (mech->mech_type == MECH_IP6)
+
91 ? sizeof( struct in6_addr )
+
92 : mech->mech_len; }
+
93static inline SPF_mech_t *SPF_mech_next( SPF_mech_t * mech )
+
94 { return (SPF_mech_t *)_align_ptr(
+
95 (char *)mech + sizeof(SPF_mech_t) + SPF_mech_data_len( mech )
+
96 ); }
+
97static inline SPF_data_t *SPF_mech_data( SPF_mech_t *mech )
+
98 { return (SPF_data_t *)( (char *)mech + sizeof(SPF_mech_t)); }
+
99static inline SPF_data_t *SPF_mech_end_data( SPF_mech_t *mech )
+
100 { return (SPF_data_t *)( (char *)SPF_mech_data(mech) +
+
101 SPF_mech_data_len( mech ));}
+
102static inline struct in_addr *SPF_mech_ip4_data( SPF_mech_t *mech )
+
103 { return (struct in_addr *)( (char *)mech + sizeof(SPF_mech_t)); }
+
104static inline struct in6_addr *SPF_mech_ip6_data( SPF_mech_t *mech )
+
105 { return (struct in6_addr *)( (char *)mech + sizeof(SPF_mech_t)); }
106
-
107#endif
-
SPF_errcode_t
Definition: spf_response.h:119
-
SPF_server_t * SPF_server_new(SPF_server_dnstype_t dnstype, int debug)
Definition: spf_server.c:132
-
SPF_server_dnstype_t
Definition: spf_server.h:72
-
@ SPF_DNS_RESOLV
Definition: spf_server.h:73
-
@ SPF_DNS_CACHE
Definition: spf_server.h:73
-
@ SPF_DNS_ZONE
Definition: spf_server.h:73
-
SPF_errcode_t SPF_server_set_explanation(SPF_server_t *sp, const char *exp, SPF_response_t **spf_responsep)
Definition: spf_server.c:235
-
void SPF_server_free(SPF_server_t *sp)
Definition: spf_server.c:200
-
SPF_errcode_t SPF_server_get_record(SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t **spf_recordp)
Definition: spf_server.c:316
-
#define SPF_DECL_ACCESS_INT(f)
Definition: spf_server.h:97
-
SPF_errcode_t SPF_server_set_sanitize(SPF_server_t *sp, int sanitize)
Definition: spf_server.c:228
-
SPF_errcode_t SPF_server_set_localpolicy(SPF_server_t *sp, const char *policy, int use_default_whitelist, SPF_response_t **spf_responsep)
Definition: spf_server.c:267
-
SPF_errcode_t SPF_server_set_rec_dom(SPF_server_t *sp, const char *dom)
Definition: spf_server.c:215
-
SPF_server_t * SPF_server_new_dns(SPF_dns_server_t *dns, int debug)
Definition: spf_server.c:180
- - -
#define debug
- - -
SPF_macro_t * explanation
Definition: spf_server.h:58
- - - - - -
SPF_record_t * local_policy
Definition: spf_server.h:57
- -
SPF_dns_server_t * resolver
Definition: spf_server.h:56
/usr/share/doc/packages/spf2-apidocs/html/a00033.png differs at offset '20' (PNG image data, 529 x 411, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00033.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00033.png (hex) @@ -1,6 +1,6 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 02 11 00 00 01 9b 08 03 00 00 00 4d 83 32 |.............M.2| -00000020 03 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....fPLTE......T| +00000010 00 00 02 18 00 00 01 e5 08 03 00 00 00 80 be 75 |...............u| +00000020 78 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |x...fPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| 00000040 70 e0 e0 e0 a7 a7 a7 63 b8 ff c3 c3 c3 8b 8b 8b |p......c........| 00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| @@ -9,25 +9,25 @@ 00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff f6 |fff.............| 00000090 c9 70 53 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.pS....tRNS.@..f| 000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| -000000b0 01 95 2b 0e 1b 00 00 1a 78 49 44 41 54 78 9c ed |..+.....xIDATx..| -000000c0 9d 89 76 a3 ba b2 86 d3 49 3a c9 f5 bd 8c fb 5c |..v.....I:.....\| -000000d0 32 ee 2c f9 fd 5f f2 68 c0 98 41 80 a6 92 4a 50 |2.,.._.h..A...JP| -000000e0 ff ea e5 d8 42 54 95 4a 1f 92 00 d3 7e 78 20 91 |....BT.J....~x .| -000000f0 48 24 12 89 44 22 91 32 d1 bf e8 95 3a 43 67 d3 |H$..D".2....:Cg.| -00000100 bf bf c8 45 44 44 16 11 41 9a 8a 88 20 4d 45 44 |...EDD..A... MED| -00000110 90 a6 22 22 48 53 11 11 a4 a9 88 08 d2 54 db 44 |..""HS.......T.D| -00000120 7c be 7f b2 79 d1 b4 e0 e7 7d 5c 7b 56 f7 e3 bb ||...y....}\{V...| -00000130 b3 ec ff 85 3b 22 22 b6 b6 89 e8 3e 3e 7f b6 fb |....;""....>>...| -00000140 6c 4c 44 f7 31 ab fb 65 0b 04 11 91 5e db 44 7c |lLD.1..e....^.D|| -00000150 ed f6 d9 98 88 45 ed ef 39 22 bb 22 22 92 6b 4c |.....E..9"."".kL| -00000160 c4 cf 37 fb fa fc 64 1f bc 23 3f be d8 d7 87 98 |..7...d..#?.....| -00000170 06 78 17 f1 92 2f 26 3a 5e 16 ca 02 fe e1 bd e3 |.x.../&:^.......| -00000180 93 02 7b 7f e7 1b 3e 79 79 a7 26 0d 69 82 57 fc |..{...>yy.&.i.W.| -00000190 f9 fe fe f9 fd 62 f7 59 43 6d e8 ab 4a 1f 5f 3f |.....b.YCm..J._?| -000001a0 8a 99 51 91 20 a2 e3 15 89 88 84 1a 11 f1 c1 3e |..Q. ..........>| -000001b0 3e df bf 3e d9 fb 87 e8 98 cf 9f ef df ae 53 44 |>..>..........SD| -000001c0 bc 7f 7e 7e 77 7d e1 9d 08 f1 b9 13 a8 7c ff 7c |..~~w}.......|.|| -000001d0 8a ee e4 b5 95 09 fe e7 fd 53 ac 21 ee 63 44 bf |.........S.!.cD.| -000001e0 a1 af 2a 7d 74 df 62 a1 31 29 fa 1d 7c 11 11 c9 |..*}t.b.1)..|...| -000001f0 34 25 42 f6 09 3f 94 3b 71 98 76 7c 5d a9 88 e0 |4%B..?.;q.v|]...| +000000b0 01 95 2b 0e 1b 00 00 1d 9e 49 44 41 54 78 9c ed |..+......IDATx..| +000000c0 9d 89 96 eb a8 ae 86 6b da 55 fb e6 5e 8f 7d ae |.......k.U..^.}.| +000000d0 6b ec 5a ce fb bf e4 01 ec 78 c4 0e 18 24 04 d6 |k.Z......x...$..| +000000e0 bf ba b3 2b 18 83 24 be 08 3c 25 0f 0f 2c 16 8b |...+..$..<%..,..| +000000f0 c5 62 b1 58 2c 56 74 fa 37 16 85 0e d4 d9 f4 ef |.b.X,Vt.7.......| +00000100 6f 1c 62 30 90 c5 60 b0 b4 62 30 58 5a 31 18 2c |o.b0..`..b0XZ1.,| +00000110 ad 18 0c 96 56 0c 06 4b 2b 06 83 a5 d5 3e 18 9f |....V..K+....>..| +00000120 ef 9f ed b2 68 5e f0 f3 3e ad bd a8 fb f1 dd e8 |....h^..>.......| +00000130 f7 da e9 b1 d5 57 67 30 90 b5 0f 46 f3 f1 f9 a3 |.....Wg0...F....| +00000140 1d b9 41 53 30 9a 8f 45 dd af 1b 17 bf d3 66 be |..AS0..E......f.| +00000150 96 d5 18 0c 82 da 07 e3 6b 6b e4 06 4d c1 58 d5 |........kk..M.X.| +00000160 fe d6 22 a0 2f 9d 35 cf 60 04 d7 14 8c 9f ef f6 |.."./.5.`.......| +00000170 eb f3 b3 fd 10 23 f7 f1 d5 8a 0f b6 98 1b c4 10 |.....#..........| +00000180 89 92 af 56 8e bf 2a 54 05 e2 cd 7b 23 66 8a f6 |...V..*T...{#f..| +00000190 fd 5d 6c f8 14 e5 4d 37 93 a8 26 44 c5 9f ef ef |.]l...M7..&D....| +000001a0 9f df af 76 3a 95 dc 9a 91 a5 dd 1e aa ab 5b b1 |...v:.........[.| +000001b0 78 15 bb 0c 60 34 a2 21 06 23 a0 26 60 7c b4 1f |x...`4.!.#.&`|..| +000001c0 9f ef 5f 9f ed fb 87 1c 98 cf 9f ef df a6 e9 46 |.._............F| +000001d0 f4 fd f3 f3 bb e9 0b 47 30 e4 fb 46 8e e9 f7 cf |.......G0..F....| +000001e0 a7 84 49 d4 ee 9a 10 ff bc 7f ca f5 c5 98 1b 26 |..I............&| +000001f0 cd c8 d2 6e 8f be ab ae b8 15 45 ed c7 00 46 5f |...n......E...F_| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00034.png differs at offset '19' (PNG image data, 3669 x 624, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00034.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00034.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 0e 55 00 00 02 70 08 03 00 00 00 9d a3 f6 |...U...p........| -00000020 c2 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 a7 |....TPLTE...GGG.| -00000030 a7 a7 8f 8f 8f 63 b8 ff c3 c3 c3 8b 8b 8b 9f 9f |.....c..........| -00000040 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f |.......???......| -00000050 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 |ttt111SSS___999r| -00000060 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 |rr...&&&...LLLff| -00000070 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff 24 d1 9b |f............$..| -00000080 5b 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 |[....tRNS.@..f..| -00000090 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 |..pHYs..........| -000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec 9d 89 |+.... .IDATx....| -000000b0 92 eb b6 0e a6 7b aa 7c af db 6d cf 5c 27 27 c9 |.....{.|..m.\''.| -000000c0 49 d9 ef ff 9e 63 6d b6 16 2e 20 09 90 20 f9 7f |I....cm... .. ..| -000000d0 95 ca 69 4b 24 08 ae c2 2f ca d6 d7 17 00 00 00 |..iK$.../.......| -000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| -* -00000100 00 00 00 00 00 00 00 00 00 40 3d fc d6 4f e9 26 |.........@=..O.&| -00000110 02 00 00 00 00 00 00 00 60 e5 f7 bf da 81 aa 04 |........`.......| -00000120 00 00 00 00 00 00 00 bd 40 55 02 00 00 00 00 00 |........@U......| -00000130 00 00 88 07 aa 12 00 00 00 00 00 00 00 40 3c 50 |.............@.)| +00000180 13 21 84 10 42 08 21 44 80 70 ca d4 7d 7c fe 59 |.!..B.!D.p..}|.Y| +00000190 cc 69 26 fc 94 a9 fb 78 38 f6 6b cc 98 7e fc 62 |.i&....x8.k..~.b| +000001a0 be 1e 0f 63 ca 44 08 21 84 10 42 08 81 e1 f5 d5 |...c.D.!..B.....| +000001b0 ff 2b 9c 32 7d ad e5 34 13 7e ca f4 74 f4 f7 62 |.+.2}..4.~..t..b| +000001c0 72 b4 bc 75 56 fc 46 ca 34 bf 04 42 08 21 84 10 |r..uV.F.4..B.!..| +000001d0 42 08 29 c7 ab 61 fa cb 4f 99 fe 7c 5f bf 3e 3f |B.)..a..O..|_.>?| +000001e0 af 1f 7d 4e f3 f1 75 fd fa 30 4f da f5 c9 4b bf |..}N..u..0O...K.| +000001f0 e5 eb 6a 32 a3 61 e3 b0 a1 ff e3 bd fb f9 f8 be |..j2.a..........| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00035.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00035.html 2023-01-07 18:00:49.179083595 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00035.html 2023-01-07 18:00:49.183083624 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_request.h File Reference +libspf2: src/include/spf_response.h File Reference @@ -45,70 +45,72 @@
-
spf_request.h File Reference
+
spf_response.h File Reference
-
#include "spf_server.h"
+
#include "spf.h"
+#href_anchor"el" href="a00008_source.html">spf_request.h"
-Include dependency graph for spf_request.h:
+Include dependency graph for spf_response.h:
-
- - - - - - - - - - - +
+ + + + + + + + + + +
This graph shows which files directly or indirectly include this file:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -116,193 +118,507 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - +

Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_request_t
struct &#href_anchor"memItemRight" valign="bottom">SPF_error_t
&#href_anchor"memitem:">struct  SPF_response_t
&#href_anchor"memberdecls"> +

+Enumerations

enum  SPF_result_t {
+  SPF_RESULT_INVALID = 0 +, SPF_RESULT_NEUTRAL +, SPF_RESULT_PASS +, SPF_RESULT_FAIL +,
+  SPF_RESULT_SOFTFAIL +, SPF_RESULT_NONE +, SPF_RESULT_TEMPERROR +, SPF_RESULT_PERMERROR +
+ }
 
enum  SPF_reason_t {
+  SPF_REASON_NONE = 0 +, SPF_REASON_FAILURE +, SPF_REASON_LOCALHOST +, SPF_REASON_LOCAL_POLICY +,
+  SPF_REASON_MECH +, SPF_REASON_DEFAULT +, SPF_REASON_2MX +
+ }
 
enum  SPF_errcode_t {
+  SPF_E_SUCCESS = 0 +, SPF_E_NO_MEMORY +, SPF_E_NOT_SPF +, SPF_E_SYNTAX +,
+  SPF_E_MOD_W_PREF +, SPF_E_INVALID_CHAR +, SPF_E_UNKNOWN_MECH +, SPF_E_INVALID_OPT +,
+  SPF_E_INVALID_CIDR +, SPF_E_MISSING_OPT +, SPF_E_INTERNAL_ERROR +, SPF_E_INVALID_ESC +,
+  SPF_E_INVALID_VAR +, SPF_E_BIG_SUBDOM +, SPF_E_INVALID_DELIM +, SPF_E_BIG_STRING +,
+  SPF_E_BIG_MECH +, SPF_E_BIG_MOD +, SPF_E_BIG_DNS +, SPF_E_INVALID_IP4 +,
+  SPF_E_INVALID_IP6 +, SPF_E_INVALID_PREFIX Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00035_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00035_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00035_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00035_source.html 2023-01-07 18:00:49.211083827 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00035_source.html 2023-01-07 18:00:49.219083886 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_request.h Source File +libspf2: src/include/spf_response.h Source File @@ -43,7 +43,7 @@
-
spf_request.h
+
spf_response.h
Go to the documentation of this file.
1/*
@@ -61,120 +61,254 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"line"> 17#define INC_SPF_REQUEST
+
16#href_anchor"line"> 17#define INC_SPF_RESPONSE
18
-
19typedef struct SPF_request_struct SPF_request_t;
-
20
-
21#href_anchor"code" href="a00032.html">spf_server.h"
-
22
- -
24 /* Structure variables */
-
25 SPF_server_t *spf_server; /* The server. */
-
26
-
27 /* Input client-end variables */
-
28 int client_ver; /* AF_INET/AF_INET6 */
-
29 struct in_addr ipv4; /* client (sending) MTA IP addr */
-
30 struct in6_addr ipv6; /* client (sending) MTA IP addr */
-
31 char *env_from; /* envelope-from/MAIL FROM: */
-
32 char *helo_dom; /* domain name from HELO cmd */
-
33 char *rcpt_to_dom; /* RCPT TO: domain for 2mx */
-
34
-
35#if 0
-
36 /* Input server-end variables */
-
37 char *rec_dom; /* receiving MTA domain name */
-
38#endif
-
39
-
40 /* Per-request configuration variables */
- - -
43
-
44 /* State/derived variables */
-
45 char *env_from_lp; /* Local part of env_from */
-
46 char *env_from_dp; /* Domain part of env_from */
-
47 char *client_dom; /* Verified domain from client IP */
-
48
-
49 /* I'm not sure whether this should be in here. */
-
50 const char *cur_dom; /* "current domain" of SPF spec */
-
51};
-
52
-
53SPF_request_t *SPF_request_new(SPF_server_t *spf_server);
-
54void SPF_request_free(SPF_request_t *sr);
-
55SPF_errcode_t SPF_request_set_ipv4(SPF_request_t *sr,
-
56 struct in_addr addr);
-
57SPF_errcode_t SPF_request_set_ipv6(SPF_request_t *sr,
-
58 struct in6_addr addr);
- -
60 const char *astr);
- -
62 const char *astr);
- -
64 const char *dom);
-
65int SPF_request_set_env_from(SPF_request_t *sr,
-
66 const char *from);
-
67const char *SPF_request_get_rec_dom(SPF_request_t *sr);
-
68
-
69const char *SPF_request_get_client_dom(SPF_request_t *sr);
-
70int SPF_request_is_loopback(SPF_request_t *sr);
-
71
-
72SPF_errcode_t SPF_request_query_mailfrom(SPF_request_t *spf_request,
-
73 SPF_response_t **spf_responsep);
-
74SPF_errcode_t SPF_request_query_rcptto(SPF_request_t *spf_request,
-
75 SPF_response_t **spf_responsep,
-
76 const char *rcpt_to);
-
77SPF_errcode_t SPF_request_query_fallback(SPF_request_t *spf_request,
-
78 SPF_response_t **spf_responsep,
-
79 const char *record);
-
80
-
81
-
82/* In spf_get_exp.c */
-
83SPF_errcode_t SPF_request_get_exp(SPF_server_t *spf_server,
-
84 SPF_request_t *spf_request,
-
85 SPF_response_t *spf_response,
-
86 SPF_record_t *spf_record,
-
87 char **bufp, size_t *buflenp);
-
88
-
89/* In spf_interpret.c - this is a kludge */
+
78typedef
+
79enum SPF_result_enum {
+ + + + + +
85
+ + + +
90
-
91SPF_errcode_t SPF_i_done(SPF_response_t *spf_response,
-
92 SPF_result_t result, SPF_reason_t reason,
-
93 SPF_errcode_t err);
-
94
-
95
-
96#endif
-
SPF_result_t
Definition: spf_response.h:79
-
SPF_reason_t
Definition: spf_response.h:100
-
SPF_errcode_t
Definition: spf_response.h:119
- -
SPF_request_t * SPF_request_new(SPF_server_t *spf_server)
Definition: spf_request.c:41
-
SPF_errcode_t SPF_request_set_ipv6_str(SPF_request_t *sr, const char *astr)
Definition: spf_request.c:106
-
SPF_errcode_t SPF_request_query_fallback(SPF_request_t *spf_request, SPF_response_t **spf_responsep, const char *record)
Definition: spf_request.c:300
-
SPF_errcode_t SPF_request_set_ipv4(SPF_request_t *sr, struct in_addr addr)
Definition: spf_request.c:71
-
int SPF_request_set_env_from(SPF_request_t *sr, const char *from)
Definition: spf_request.c:139
-
SPF_errcode_t SPF_request_set_helo_dom(SPF_request_t *sr, const char *dom)
Definition: spf_request.c:117
-
SPF_errcode_t SPF_request_set_ipv4_str(SPF_request_t *sr, const char *astr)
Definition: spf_request.c:95
-
SPF_errcode_t SPF_request_get_exp(SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t *spf_record, char **bufp, size_t *buflenp)
Definition: spf_get_exp.c:83
-
SPF_errcode_t SPF_i_done(SPF_response_t *spf_response, SPF_result_t result, SPF_reason_t reason, SPF_errcode_t err)
-
const char * SPF_request_get_client_dom(SPF_request_t *sr)
Definition: spf_request.c:196
-
const char * SPF_request_get_rec_dom(SPF_request_t *sr)
Definition: spf_request.c:131
-
int SPF_request_is_loopback(SPF_request_t *sr)
Definition: spf_request.c:212
-
void SPF_request_free(SPF_request_t *sr)
Definition: spf_request.c:59
-
SPF_errcode_t SPF_request_query_rcptto(SPF_request_t *spf_request, SPF_response_t **spf_responsep, const char *rcpt_to)
Definition: spf_request.c:340
-
SPF_errcode_t SPF_request_query_mailfrom(SPF_request_t *spf_request, SPF_response_t **spf_responsep)
Definition: spf_request.c:270
-
SPF_errcode_t SPF_request_set_ipv6(SPF_request_t *sr, struct in6_addr addr)
Definition: spf_request.c:83
- - - - - - -
struct in6_addr ipv6
Definition: spf_request.h:30
- -
SPF_server_t * spf_server
Definition: spf_request.h:25
-
struct in_addr ipv4
Definition: spf_request.h:29
- -
const char * cur_dom
Definition: spf_request.h:50
- - +
99typedef
+
100enum SPF_reason_enum {
+ + + + + + + + +
109
+
118typedef
+
119enum SPF_errcode_t {
+
120 SPF_E_SUCCESS = 0
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
155
+
156typedef
/usr/share/doc/packages/spf2-apidocs/html/a00036.png differs at offset '20' (PNG image data, 367 x 485, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00036.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00036.png (hex) @@ -1,6 +1,6 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 01 6f 00 00 01 e5 08 03 00 00 00 0d c9 8d |...o............| -00000020 98 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....fPLTE......T| +00000010 00 00 01 fd 00 00 01 50 08 03 00 00 00 82 90 57 |.......P.......W| +00000020 8a 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....fPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| 00000040 70 e0 e0 e0 a7 a7 a7 c3 c3 c3 8b 8b 8b 63 b8 ff |p............c..| 00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| @@ -9,25 +9,25 @@ 00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff a6 |fff.............| 00000090 fc eb 02 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.......tRNS.@..f| 000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| -000000b0 01 95 2b 0e 1b 00 00 16 14 49 44 41 54 78 9c ed |..+......IDATx..| -000000c0 9d 89 96 e2 3a 0e 86 bb a8 75 66 c2 7a 67 42 41 |....:....uf.zgBA| -000000d0 55 73 c2 fb bf e4 38 76 02 59 9c c4 8b 24 2f d1 |Us....8v.Y...$/.| -000000e0 7f fa 34 e0 45 b2 3f 54 22 84 80 fe fc 61 b1 58 |..4.E.?T"....a.X| -000000f0 2c 16 8b 45 a7 bf c9 28 34 29 18 fd bd 25 22 e6 |,..E...(4)...%".| -00000100 4d 2b e6 4d 2b e6 4d 2b e6 4d 2b e6 4d 2b e6 4d |M+.M+.M+.M+.M+.M| -00000110 ab 35 f0 be 9c 2f d5 b0 a9 df f0 7b ee 8e 1e 8c |.5.../.....{....| -00000120 fd fe 29 5d e9 8e fc ae 82 77 f9 7d f9 9d 07 d1 |..)].....w.}....| -00000130 e5 5d 7e 0f c6 5e 1d 70 5f bf 75 6e 6e eb e0 7d |.]~..^.p_.unn..}| -00000140 1d 37 cd f0 1e 8d fe 19 3e 01 06 fa 59 0f ef df |.7......>...Y...| -00000150 9f ea 7a b9 54 df 62 cb df d7 4a 04 9a 48 10 62 |..z.T.b...J..H.b| -00000160 df a2 e5 5a d5 58 65 a3 6c 10 0f ce a5 48 17 d5 |...Z.Xe.l....H..| -00000170 f9 2c 3a 2e a2 bd 54 e9 44 9a 10 03 7f 7f 7e 7e |.,:...T.D.....~~| -00000180 6f d7 ea 91 4f 94 d5 66 60 6d e7 7c 7e 98 69 5a |o...O..f`m.|~.iZ| -00000190 d5 d4 76 ce a5 2a c5 e3 ac 79 7f 57 df 97 f3 f5 |..v..*...y.W....| -000001a0 52 9d bf eb dd 5e 7e 7f 6e 65 a9 78 9f 2f 97 9f |R....^~.ne.x./..| -000001b0 b2 69 7c f2 ae 1f 97 f5 13 f1 f3 7b a9 69 8a d1 |.i|........{.i..| -000001c0 ca 84 b8 39 5f ea dc fd 8c 6f 69 b5 19 d8 ce 6b |...9_....oi....k| -000001d0 79 ab d6 66 ea 33 be 95 d3 bc 79 cb 8d 5e 44 26 |y..f.3....y..^D&| -000001e0 ae 23 ab 14 af 96 8a b7 68 39 ff 36 8d ff 3c 78 |.#......h9.6.....O..3.....C..| +00000170 22 80 6d 7c d4 ac 63 6f 3e 3e d8 8e 1b 0b af 65 |".m|..co>>.....e| +00000180 c7 2f b2 60 11 7f be bf 7f 7e bf 9a be e7 97 b9 |./.`.....~......| +00000190 b6 11 47 91 78 ae 3c 5a 57 8a dc d9 45 15 49 6b |..G.x..n..'| +000001b0 f7 f8 ed e7 fb b7 ae 25 fd 8f db ed bb 6e 03 07 |.......%.....n..| +000001c0 fa 7c bb e6 c0 be 7f 6e 9c 2d 8b 2d b3 60 5f 1f |.|.....n.-.-.`_.| +000001d0 37 3e e6 0f 6d 5f e4 da 46 1c 47 ba f1 c0 e6 b3 |7>..m_..F.G.....| +000001e0 2b a5 dd d9 e5 29 93 8a e2 89 7e 78 8d e9 0b 67 |+....)....~x...g| +000001f0 b3 96 57 f3 b6 56 b3 39 9f a4 cf 42 3e 7e da c0 |..W..V.9...B>~..| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00037.png differs at offset '19' (PNG image data, 3657 x 549, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00037.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00037.png (hex) @@ -1,6 +1,6 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 0e 49 00 00 02 25 08 03 00 00 00 fc 72 0e |...I...%......r.| -00000020 e0 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 8f |....TPLTE...GGG.| +00000010 00 00 11 c9 00 00 02 05 08 03 00 00 00 20 d5 32 |............. .2| +00000020 da 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 8f |....TPLTE...GGG.| 00000030 8f 8f a7 a7 a7 63 b8 ff c3 c3 c3 8b 8b 8b 9f 9f |.....c..........| 00000040 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f |.......???......| 00000050 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 |ttt111SSS___999r| @@ -8,26 +8,26 @@ 00000070 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff be 71 ff |f.............q.| 00000080 3f 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 |?....tRNS.@..f..| 00000090 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 |..pHYs..........| -000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec 9d 8b |+.... .IDATx....| -000000b0 72 eb 38 0e a6 b3 55 9e 71 9c 64 77 dc 7d ba fb |r.8...U.q.dw.}..| -000000c0 74 25 ef ff 9e 6b 5b 92 ad 0b 2f 00 09 80 a0 f4 |t%...k[.../.....| -000000d0 7f 35 35 7d 22 91 00 45 52 24 7f 81 96 de de 00 |.55}"..ER$......| +000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec bd 09 |+.... .IDATx....| +000000b0 b3 e3 36 cf 46 79 ab e6 e6 f3 76 67 5e 27 9d a4 |..6.Fy....vg^'..| +000000c0 53 f6 ff ff 9f 63 5b 5e b4 51 e2 4e 00 3a a7 52 |S....c[^.Q.N.:.R| +000000d0 e9 b6 2c 91 00 01 52 e4 d3 94 fc f5 05 00 00 00 |..,...R.........| 000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * -00000100 00 00 00 00 00 00 00 00 00 00 00 00 f6 ce ef 6e |...............n| -00000110 68 5d 53 00 00 00 00 00 00 00 00 06 7e ff db 09 |h]S.........~...| -00000120 50 92 00 00 00 00 00 00 00 e0 04 28 49 00 00 00 |P..........(I...| -00000130 00 00 00 00 00 3c a0 24 01 00 00 00 00 00 00 00 |.....<.$........| -00000140 f0 80 92 04 00 00 00 00 00 00 00 c0 03 4a 12 00 |.............J..| -00000150 00 00 00 00 00 00 00 0f 28 49 00 00 00 00 00 00 |........(I......| -00000160 00 00 3c a0 24 01 00 00 00 00 00 00 00 f0 48 2a |..<.$.........H*| -00000170 c9 5f 7f fc fa 5e 1f 5a 1e f8 e7 8f 79 ea 55 da |._...^.Z....y.U.| -00000180 3f ff be 96 ea c6 8d 5f 28 49 00 00 00 00 00 00 |?......_(I......| -00000190 00 f0 42 52 49 5e ff fc f5 4f 5a e2 cd 95 e4 f5 |..BRI^...OZ.....| -000001a0 cf 55 da bf 0a 84 e4 5f 7f 86 dc fc 0b 25 09 00 |.U....._.....%..| -000001b0 00 00 00 00 00 00 6e 48 2a c9 bf b6 87 12 4a 72 |......nH*.....Jr| -000001c0 93 fa ef b5 b4 24 f0 37 94 24 00 00 00 00 00 00 |.....$.7.$......| -000001d0 00 38 67 a6 24 ff f9 fb fb af 5f bf be ff bc 89 |.8g.$....._.....| -000001e0 b9 3f ff fa fe eb cf fb 76 d5 9b a2 bb 1d f9 eb |.?......v.......| -000001f0 fb 2e 18 1f 07 1f 07 6e 7f fc 71 fd f7 cf bf bf |.......n..q.....| +00000100 00 00 00 00 00 00 00 00 00 00 99 f8 ad 91 d6 8d |................| +00000110 06 00 00 00 00 00 00 00 d0 84 df ff e9 03 25 07 |..............%.| +00000120 00 00 00 00 00 00 00 b6 09 4a 0e 00 00 00 00 00 |.........J......| +00000130 00 00 80 16 50 72 00 00 00 00 00 00 00 00 b4 80 |....Pr..........| +00000140 92 03 00 00 00 00 00 00 00 a0 05 94 1c 00 00 00 |................| +00000150 00 00 00 00 00 2d a0 e4 00 00 00 00 00 00 00 00 |.....-..........| +00000160 68 01 25 07 00 00 00 00 00 00 00 40 0b cb 4a ce |h.%........@..J.| +00000170 af 3f 7f 5d c6 87 86 07 fe fd b3 7f f6 e8 dc bf |.?.]............| +00000180 fe 39 c7 eb 35 8e 0a ff 43 c9 01 00 00 00 00 00 |.9..5...C.......| +00000190 00 80 ad b2 ac e4 9c ff fa f5 ef b2 b0 d2 57 72 |..............Wr| +000001a0 ce 7f 8d ce fd 3b 83 90 83 92 03 00 00 00 00 00 |.....;..........| +000001b0 00 00 f0 64 59 c9 f9 7b 55 58 e9 2b 39 93 b3 ff |...dY..{UX.+9...| +000001c0 19 4b 3b 31 a0 e4 00 00 00 00 00 00 00 00 74 f4 |.K;1..........t.| +000001d0 95 9c 7f ff b9 fc fd eb d7 e5 af 7f fe fa ef af |................| +000001e0 bf 2f 7f ff 75 7f 5c ea d7 e5 f6 df ed d3 5d b0 |./..u.\.......].| +000001f0 79 1c 7c 1c b8 7d f8 f3 fc df 5f ff 5c fe fc f3 |y.|..}...._.\...| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00038.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00038.html 2023-01-07 18:00:49.259084176 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00038.html 2023-01-07 18:00:49.255084148 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_dns_cache.h File Reference +libspf2: src/include/spf_dns_resolv.h File Reference @@ -45,19 +45,19 @@
-
spf_dns_cache.h File Reference
+
spf_dns_resolv.h File Reference
This graph shows which files directly or indirectly include this file:
-
- +
+ - - - - + + + +
@@ -65,29 +65,24 @@ - - - - - - + +

Functions

SPF_dns_server_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_cache_new (SPF_dns_server_t *layer_below, const char *name, int debug, int cache_bits)
 
void SPF_dns_cache_set_ttl (SPF_dns_server_t *spf_dns_server, time_t min_ttl, time_t err_ttl, time_t txt_ttl, time_t rdns_ttl)
 
void SPF_dns_set_conserve_cache (SPF_dns_server_t *spf_dns_server, int conserve_cache)
 
SPF_dns_server_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_resolv_new (SPF_dns_server_t *layer_below, const char *name, int debug)
 

Detailed Description

-

The caching DNS layer provides a quick, in-process cache of DNS information. It is not designed to be a general DNS cache, it is tailored to the needs of the SPF system. In particular, you can cache compiled SPF records, thus reducing the need to constantly recompile commonly used ones.

-

In most cases, it is best to have at least a small DNS caching layer as the top layer.

-

Multiple caching DNS layers can be created, which could sometimes be useful. For example, caches of different sizes will have different hash collisions, thus reducing the number of redundant queries sent to lower DNS layers.

-

For an overview of the DNS layer system, see spf_dns.h

+

The resolv DNS layer is an interface to the libresolv stub DNS resolver.

+

While multiple resolv DNS layers can be created, I can't see much use for more than one.

+

For an overview of the DNS layer system, see spf_dns.h

-

Definition in file spf_dns_cache.h.

+

Definition in file spf_dns_resolv.h.

Function Documentation

- -

◆ SPF_dns_cache_new()

+ +

◆ SPF_dns_resolv_new()

- + @@ -102,13 +97,7 @@ - - - - - - - + @@ -118,105 +107,13 @@
SPF_dns_server_t * SPF_dns_cache_new SPF_dns_server_t * SPF_dns_resolv_new ( SPF_dns_server_t *  layer_below, int debug,
int cache_bits debug 

These routines take care of creating/destroying/etc. the objects that hold the DNS layer configuration. SPF_dns_server_t objects contain malloc'ed data, so they must be destroyed when you are finished with them, or you will leak memory.

-

cache_bits determines the size of the DNS cache. The cache will be 2^cache_bits entries large.

-

If debugging is turned on, information about cache hits and misses will be generated.

- -

Definition at line 487 of file spf_dns_cache.c.

- -

References SPF_dns_cache_config_t::cache, SPF_dns_cache_config_t::cache_lock, SPF_dns_cache_config_t::cache_size, SPF_dns_cache_config_t::conserve_cache, debug, SPF_dns_cache_config_t::err_ttl, SPF_dns_cache_config_t::hash_mask, SPF_dns_cache_config_t::max_hash_len, SPF_dns_cache_config_t::min_ttl, NULL, SPF_dns_cache_config_t::rdns_ttl, SPF_ASSERT_NOTNULL, SPF_error, and SPF_dns_cache_config_t::txt_ttl.

- -

Referenced by SPF_server_new().

- -
-
- -

◆ SPF_dns_cache_set_ttl()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void SPF_dns_cache_set_ttl (SPF_dns_server_t * spf_dns_server,
time_t min_ttl,
time_t err_ttl,
time_t txt_ttl,
time_t rdns_ttl 
)
-
-

By default, the caching DNS layer uses the Time To Live (TTL) values that are obtained from the actual DNS Resource Records (RR). However, because we know more about the situation than general caching DNS resolvers, we can adjusted the TTLs to be more appropriate for the email system. For example, since DNS errors will cause a 4xx temporary failure to be returned by the MTA, and the RFCs require the sending MTA to wait a while before it tries to resend the message, we can cache DNS errors for a while. General caching resolvers can't know if the next request needs the latest information about a name server being down, so it doesn't cache this information.

-

The caching DNS layer allows the following minimal TTL values:

-

min_ttl The absolute minimum TTL value in all cases.

-

err_ttl The minimum TTL value to use when there is a DNS error.

-

txt_ttl The minimum TTL value to use when a TXT query is done. In the case of SPF, these are the SPF records and the explanation records. This TTL value is used even when no record is found, so domains that haven't set up SPF records won't be constantly queried. Since SPF records are intended to not be changed often, this value can be fairly large.

-

rdns_ttl The minimum TTL value to use when looking up information in the reverse DNS tree. This applies to both valid results, and when an error is detected.

-

Note that more than one of these TTL values may apply. A TXT RR lookup that fails will have a TTL that is the largest of the min_ttl, the err_ttl and the txt_ttl values.

+

if debugging is enabled, information about the results from libresolv will be displayed. This information is often not passed on to (and not needed by) the higher level DNS layers.

-

Definition at line 555 of file spf_dns_cache.c.

- -

References SPF_dns_cache_config_t::cache_lock, SPF_dns_cache_config_t::err_ttl, SPF_dns_cache_config_t::min_ttl, NULL, SPF_dns_cache_config_t::rdns_ttl, SPF_ASSERT_NOTNULL, and SPF_dns_cache_config_t::txt_ttl.

- -
-
- -

◆ SPF_dns_set_conserve_cache()

- -
-
- - - - - - - - - - - - - - - - - - -
void SPF_dns_set_conserve_cache (SPF_dns_server_t * spf_dns_server,
int conserve_cache 
)
-
-

The caching DNS layer can try to conserve it's cache to only those queries that will likely to be used often. If told to conserve the cache entries, it will not cache queries that were constructed from things like the client IP address or the local part of the envelope-from email address. Such information may well be cached by the general DNS resolver, so the answers may be quickly obtained anyway.

-

By default, caches with fewer than 4k entries (12 bits) will try to conserve the cache entries, but larger caches will not. This is just a guess though. In reality, it will depend a great deal on how active your mail server is and what the typical TTL values that you get from the particular DNS records you query are.

+

Definition at line 619 of file spf_dns_resolv.c.

-

Definition at line 577 of file spf_dns_cache.c.

+

References debug, NULL, and SPF_warning.

-

References SPF_dns_cache_config_t::conserve_cache, NULL, and SPF_ASSERT_NOTNULL.

+

Referenced by SPF_server_new().

/usr/share/doc/packages/spf2-apidocs/html/a00038_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00038_source.html 2023-01-07 18:00:49.275084293 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00038_source.html 2023-01-07 18:00:49.275084293 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_dns_cache.h Source File +libspf2: src/include/spf_dns_resolv.h Source File @@ -43,7 +43,7 @@
-
spf_dns_cache.h
+
spf_dns_resolv.h
Go to the documentation of this file.
1/*
@@ -64,25 +64,14 @@
16
17
18
-
19#href_anchor"line"> 20#define INC_SPF_DNS_CACHE
+
19#href_anchor"line"> 20#define INC_SPF_DNS_RESOLV
21
-
22
-
57SPF_dns_server_t *SPF_dns_cache_new(SPF_dns_server_t *layer_below,
-
58 const char *name, int debug, int cache_bits);
-
59
-
60
-
98void SPF_dns_cache_set_ttl( SPF_dns_server_t *spf_dns_server,
-
99 time_t min_ttl, time_t err_ttl,
-
100 time_t txt_ttl, time_t rdns_ttl );
-
101
-
118void SPF_dns_set_conserve_cache( SPF_dns_server_t *spf_dns_server,
-
119 int conserve_cache );
-
120
-
121#endif
-
SPF_dns_server_t * SPF_dns_cache_new(SPF_dns_server_t *layer_below, const char *name, int debug, int cache_bits)
-
void SPF_dns_cache_set_ttl(SPF_dns_server_t *spf_dns_server, time_t min_ttl, time_t err_ttl, time_t txt_ttl, time_t rdns_ttl)
-
void SPF_dns_set_conserve_cache(SPF_dns_server_t *spf_dns_server, int conserve_cache)
-
#define debug
+
43SPF_dns_server_t *SPF_dns_resolv_new(SPF_dns_server_t *layer_below,
+
44 const char *name, int debug);
+
45
+
46#endif
+
SPF_dns_server_t * SPF_dns_resolv_new(SPF_dns_server_t *layer_below, const char *name, int debug)
+
#define debug
-
#href_anchor"el" href="a00044_source.html">spf_dns.h"
+
#href_anchor"el" href="a00011_source.html">spf_dns.h"
Include dependency graph for spf_dns_internal.h:
- - - - - - - - - + + + + + + + + +
@@ -71,18 +71,18 @@
- - - - - - - - - - - - + + + + + + + + + + + +
/usr/share/doc/packages/spf2-apidocs/html/a00041_source.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00041_source.html 2023-01-07 18:00:49.315084584 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00041_source.html 2023-01-07 18:00:49.315084584 +0000 @@ -66,9 +66,9 @@
18
19#href_anchor"line"> 20#define INC_SPF_DNS_INTERNAL
21
-
22#include "spf_dns.h"
+
22#include "spf_dns.h"
23
-
24#href_anchor"ttc" id="aa00044_html">
+
24#href_anchor"ttc" id="aa00011_html">
-
spf_dns.h File Reference
+
spf.h File Reference
-
#include "spf_request.h"
-#href_anchor"el" href="a00068_source.html">spf_dns_rr.h"
+
#include "spf_lib_version.h"
+#href_anchor"el" href="a00017_source.html">spf_server.h"
+#include "spf_request.h"
+#href_anchor"el" href="a00035_source.html">spf_response.h"
+#include "spf_dns.h"
+#href_anchor"el" href="a00014_source.html">spf_log.h"
-Include dependency graph for spf_dns.h:
+Include dependency graph for spf.h:
-
- - - - - - - - - - - +
+ + + + + + + + + + +
This graph shows which files directly or indirectly include this file:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Go to the source code of this file.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + /usr/share/doc/packages/spf2-apidocs/html/a00044_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00044_source.html 2023-01-07 18:00:49.363084933 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00044_source.html 2023-01-07 18:00:49.363084933 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_dns.h Source File +libspf2: src/include/spf.h Source File @@ -43,7 +43,7 @@
-
spf_dns.h
+
spf.h
Go to the documentation of this file.
1/*
@@ -61,140 +61,78 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16
-
17
-
18
-
19#href_anchor"line"> 20#define INC_SPF_DNS
-
21
-
22
-
67/*
-
68 * For those who don't have <arpa/nameserv.h>
-
69 */
+
16#href_anchor"line"> 17#define __attribute__(x)
+
18#endif
+
19
+
20
+
21#ifndef INC_SPF
+
22#define INC_SPF
+
23
+
24
+
25#include "spf_lib_version.h"
+
26
+
27#href_anchor"code" href="a00017.html">spf_server.h"
+
28#include "spf_request.h"
+
29#href_anchor"code" href="a00035.html">spf_response.h"
+
30#include "spf_dns.h"
+
31#href_anchor"code" href="a00014.html">spf_log.h"
+
32
+
33
+
34#define SPF_VERSION 1
+
35#define SPF_VER_STR "v=spf1"
+
36
+
37
+
38/* ********************************************************************* */
+
39
+
40
+
46#define SPF_C_ERR_MSG_SIZE (2*80)
+
47#define SPF_SMTP_COMMENT_SIZE (4*80)
+
48#define SPF_RECEIVED_SPF_SIZE (6*80)
+
49#define SPF_SYSLOG_SIZE (10*80)
+
50
+
51
+
52
+
53
+
54/* ********************************************************************* */
+
55
+
59#define SPF_DEFAULT_MAX_DNS_MECH 10
+
60#define SPF_DEFAULT_MAX_DNS_PTR 10
+
61#define SPF_DEFAULT_MAX_DNS_MX 10
+
62#define SPF_DEFAULT_SANITIZE 1
+
63#define SPF_DEFAULT_WHITELIST "include:spf.trusted-forwarder.org"
+
64#define SPF_EXP_MOD_NAME "exp-text"
+
67#define SPF_DEFAULT_EXP "Please%_see%_http://www.openspf.org/Why?id=%{S}&ip=%{C}&receiver=%{R}"
+
68
+
69
70
-
71/* XXX This should use a more sensible define. */
-
72#if !defined( HAVE_NS_TYPE )
-
73
-
74#define ns_t_invalid 0
-
75#define ns_t_a 1
-
76#define ns_t_ns 2
-
77#define ns_t_cname 5
-
78#define ns_t_ptr 12
-
79#define ns_t_mx 15
-
80#define ns_t_txt 16
-
81#define ns_t_aaaa 28
-
82/* #define ns_t_a6 38 */
-
83#define ns_t_any 255
-
85typedef int ns_type;
-
86#endif
-
87
-
88#if ! HAVE_DECL_NS_T_SPF
-
89#define ns_t_spf 99
-
90#endif
-
91
-
92#if ! HAVE_DECL_NS_T_INVALID
-
93#define ns_t_invalid 0
-
94#endif
-
95
-
96
-
97/*
-
98 * For those who don't have <netdb.h>
-
99 */
-
100
-
101#if !defined(HAVE_NETDB_H) && !defined(_WIN32)
-
102#define NETDB_SUCCESS 0
-
103#define HOST_NOT_FOUND 1
-
104#define TRY_AGAIN 2
-
105#define NO_RECOVERY 3
-
106#define NO_DATA 4
-
107#endif
-
108typedef int SPF_dns_stat_t;
-
109
-
110typedef struct SPF_dns_server_struct SPF_dns_server_t;
-
111
-
112#href_anchor"code" href="a00035.html">spf_request.h"
-
113#include "spf_dns_rr.h"
-
114
-
115/*
-
116 * bundle up the info needed to use a dns method
-
117 */
-
118
-
119typedef void (*SPF_dns_destroy_t)(SPF_dns_server_t *spf_dns_server);
-
120typedef SPF_dns_rr_t *(*SPF_dns_lookup_t)(
-
121 SPF_dns_server_t *spf_dns_server,
-
122 const char *domain,
-
123 ns_type ns_type, int should_cache
-
124 );
-
125typedef SPF_errcode_t (*SPF_dns_get_spf_t)( SPF_server_t *spf_server,
-
126 SPF_request_t *spf_request,
-
127 SPF_response_t *spf_response,
-
128 SPF_record_t **spf_recordp);
-
129typedef SPF_errcode_t (*SPF_dns_get_exp_t)( SPF_server_t *spf_server,
-
130 const char *domain,
-
131 char **buf, size_t *buf_len );
-
132typedef int (*SPF_dns_add_cache_t)( SPF_server_t *spf_server,
-
133 SPF_dns_rr_t spfrr );
-
134
- -
136{
- -
143
- - - - -
148
-
149 /* the next DNS layer down to call if this layer can't give an answer */
-
150 SPF_dns_server_t *layer_below;
-
151
-
152 const char *name; /* name of the layer */
-
153 int debug;
-
154 void *hook; /* server-specific data */
-
155};
-
156
-
157
-
158void SPF_dns_free( SPF_dns_server_t *spf_dns_server );
-
159SPF_dns_rr_t *SPF_dns_lookup( SPF_dns_server_t *spf_dns_server,
-
160 const char *domain, ns_type rr_type,
-
161 int should_cache );
-
162SPF_dns_rr_t *SPF_dns_rlookup( SPF_dns_server_t *spf_dns_server,
-
163 struct in_addr ipv4, ns_type rr_type,
-
164 int should_cache );
-
165SPF_dns_rr_t *SPF_dns_rlookup6( SPF_dns_server_t *spf_dns_server,
-
166 struct in6_addr ipv6, ns_type rr_type,
-
167 int should_cache );
-
168
-
169
-
177char *SPF_dns_get_client_dom(SPF_dns_server_t *spf_dns_server,
-
178 SPF_request_t *sr);
-
179
-
180
-
181#endif
-
SPF_errcode_t
Definition: spf_response.h:119
- -
int ns_type
Definition: spf_dns.h:85
-
SPF_errcode_t(* SPF_dns_get_exp_t)(SPF_server_t *spf_server, const char *domain, char **buf, size_t *buf_len)
Definition: spf_dns.h:129
-
void(* SPF_dns_destroy_t)(SPF_dns_server_t *spf_dns_server)
Definition: spf_dns.h:119
-
SPF_dns_rr_t * SPF_dns_rlookup(SPF_dns_server_t *spf_dns_server, struct in_addr ipv4, ns_type rr_type, int should_cache)
Definition: spf_dns.c:150
-
SPF_errcode_t(* SPF_dns_get_spf_t)(SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t **spf_recordp)
Definition: spf_dns.h:125
-
SPF_dns_rr_t * SPF_dns_rlookup6(SPF_dns_server_t *spf_dns_server, struct in6_addr ipv6, ns_type rr_type, int should_cache)
Definition: spf_dns.c:171
-
char * SPF_dns_get_client_dom(SPF_dns_server_t *spf_dns_server, SPF_request_t *sr)
Definition: spf_dns.c:206
-
void SPF_dns_free(SPF_dns_server_t *spf_dns_server)
Definition: spf_dns.c:116
-
int(* SPF_dns_add_cache_t)(SPF_server_t *spf_server, SPF_dns_rr_t spfrr)
Definition: spf_dns.h:132
-
int SPF_dns_stat_t
Definition: spf_dns.h:108
-
SPF_dns_rr_t * SPF_dns_lookup(SPF_dns_server_t *spf_dns_server, const char *domain, ns_type rr_type, int should_cache)
Definition: spf_dns.c:133
-
SPF_dns_rr_t *(* SPF_dns_lookup_t)(SPF_dns_server_t *spf_dns_server, const char *domain, ns_type ns_type, int should_cache)
Definition: spf_dns.h:120
- - -
SPF_dns_server_t * layer_below
Definition: spf_dns.h:150
-
const char * name
Definition: spf_dns.h:152
-
SPF_dns_add_cache_t add_cache
Definition: spf_dns.h:147
- -
SPF_dns_lookup_t lookup
Definition: spf_dns.h:144
-
SPF_dns_get_exp_t get_exp
Definition: spf_dns.h:146
- -
SPF_dns_destroy_t destroy
Definition: spf_dns.h:142
-
SPF_dns_get_spf_t get_spf
Definition: spf_dns.h:145
/usr/share/doc/packages/spf2-apidocs/html/a00045.png differs at offset '19' (PNG image data, 424 x 560, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00045.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00045.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 01 a8 00 00 02 30 08 03 00 00 00 e4 b1 0f |.......0........| -00000020 41 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |A...fPLTE......T| +00000010 00 00 02 93 00 00 01 50 08 03 00 00 00 d4 5c 05 |.......P......\.| +00000020 48 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |H...fPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| -00000040 70 e0 e0 e0 c3 c3 c3 8b 8b 8b a7 a7 a7 63 b8 ff |p............c..| +00000040 70 e0 e0 e0 a7 a7 a7 c3 c3 c3 8b 8b 8b 63 b8 ff |p............c..| 00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| 00000060 7f 7f 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 |..ttt111SSS___99| 00000070 39 72 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c |9rrr...&&&...LLL| -00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff ee |fff.............| -00000090 35 9e cb 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |5......tRNS.@..f| +00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff a6 |fff.............| +00000090 fc eb 02 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.......tRNS.@..f| 000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| -000000b0 01 95 2b 0e 1b 00 00 17 ee 49 44 41 54 78 9c ed |..+......IDATx..| -000000c0 9d 0b 77 ab 2c 16 86 4f ef 9d 19 73 fd 66 6c d3 |..w.,..O...s.fl.| -000000d0 f6 74 99 ff ff 27 07 01 13 2f 80 5c 36 20 fa 3e |.t...'.../.\6 .>| -000000e0 eb ac 9e 46 11 61 3f 41 89 b1 ee 3f 7f 00 00 00 |...F.a?A...?....| -000000f0 00 00 c0 84 bf cb 23 77 48 96 c9 df df a5 01 51 |......#wH......Q| -00000100 4a 20 aa 10 20 aa 10 20 aa 10 20 aa 10 20 aa 10 |J .. .. .. .. ..| -00000110 20 aa 10 8c a2 2e 1f 97 66 bc 68 b8 e0 e7 a3 5f | .......f.h...._| -00000120 7a 54 f6 f3 bb d6 95 d5 d5 07 51 3a 8c a2 ea cf |zT........Q:....| -00000130 cb 8f bd a8 fa 73 54 f6 ab d6 96 85 28 57 8c a2 |.....sT.....(W..| -00000140 be 66 03 db 0f fe a4 f4 f7 d0 1c 44 85 d0 13 f5 |.f.........D....| -00000150 f3 dd 7c 5d 2e cd 27 8b ef e7 57 f3 f5 d9 1e cb |..|]..'...W.....| -00000160 58 1c d9 92 af a6 8d 31 5f c8 17 b0 17 1f 35 3b |X......1_.....5;| -00000170 b2 35 1f 1f 6c c5 85 2d af c5 91 8f 57 c1 0a fe |.5..l..-....W...| -00000180 7c 7f ff fc 7e 35 f7 43 9f 2c db d5 25 ca 09 51 ||...~5.C.,..%..Q| -00000190 35 fb 1d a2 66 b9 8b fa 6c 3e 2f 1f 5f 97 e6 e3 |5...f...l>/._...| -000001a0 b3 8d de e5 e7 fb b7 ae 85 a8 8f cb e5 bb 96 0b |................| -000001b0 ef a2 da d7 75 1b f5 ef 9f 4b 2b 97 95 16 55 b0 |....u....K+...U.| -000001c0 ff 3e 2e ed f9 e9 3e a2 ba b2 b2 2e 59 4e ac 11 |.>....>.....YN..| -000001d0 b5 43 d4 0c 03 51 3c 70 ec 9d 5e b7 41 ac d9 54 |.C...Q~...n.~.._.| -000001f0 6c b0 b4 a3 f1 eb 97 95 16 55 b0 ff 7e 79 1d 77 |l........U..~y.w| +000000b0 01 95 2b 0e 1b 00 00 19 85 49 44 41 54 78 9c ed |..+......IDATx..| +000000c0 9d 89 96 a3 b0 8e 86 6b eb aa 9e 99 b0 de 19 6a |.......k.......j| +000000d0 ef 43 de ff 25 c7 0b 49 58 bc c8 bb 02 fa 4f 9f |.C..%..IX.....O.| +000000e0 54 62 6c 23 a4 af 65 1b 08 79 78 20 91 48 24 12 |Tbl#..e..yx .H$.| +000000f0 89 44 22 91 48 24 d2 2e f4 5b 44 a5 8f 9a 84 59 |.D".H$...[D....Y| +00000100 bf ff 0a 88 98 24 19 44 4c 92 b0 89 98 24 61 13 |.....$.DL....$a.| +00000110 31 49 c2 26 62 92 84 4d c4 24 09 9b 88 49 12 36 |1I.&b..M.$...I.6| +00000120 99 99 fc 7c ff 1c d7 45 cb 82 9f f7 79 ed 55 dd |...|...E....y.U.| +00000130 8f ef 41 d1 84 98 24 19 65 66 72 f8 f8 fc 81 33 |..A...$.efr....3| +00000140 39 7c ac ea 7e 0d aa 26 c4 24 c9 28 33 93 5f db |9|..~..&.$.(3._.| +00000150 22 03 93 9b da df 1f c4 24 c9 59 73 26 7f be c7 |".......$.Ys&...| +00000160 af cf cf f1 83 a1 f4 f1 35 7e 7d f0 c1 98 f1 c4 |........5~}.....| +00000170 4a be 46 8e 9e 28 14 05 ec c3 fb c0 86 e6 f1 fd |J.F..(..........| +00000180 9d 6d f8 64 e5 83 1c ba 45 17 ac e2 cf f7 f7 cf |.m.d....E.......| +00000190 bf af f1 32 76 0f ac 98 98 24 c1 34 63 f2 63 fc |...2v....$.4c.c.| +000001a0 f8 7c ff fa 1c df 3f 38 45 9f 3f df ff 86 41 32 |.|....?8E.?...A2| +000001b0 f9 fe f9 f9 3d 4c 85 37 26 f9 e7 81 c3 fa fd f3 |....=L.7&.......| +000001c0 c9 39 66 b5 65 17 ec cf fb 27 9f 4b 5e f3 a4 ec |.9f.e....'.K^...| +000001d0 80 98 24 41 b4 64 52 00 f4 c9 66 86 3c ab 0d 6c |..$A.dR...f.<..l| +000001e0 85 23 99 64 25 ef 3f 53 e1 7f ae 4c fe f0 cf 5f |.#.d%.?S...L..._| +000001f0 ef 2c 5d f2 1c fb f5 8f d5 96 5d b0 3f ff 44 1f |.,].......].?.D.| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00046.png differs at offset '19' (PNG image data, 3823 x 549, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00046.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00046.png (hex) @@ -1,6 +1,6 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 0e ef 00 00 02 25 08 03 00 00 00 58 34 74 |.......%.....X4t| -00000020 76 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 8f |v...TPLTE...GGG.| +00000010 00 00 0f d9 00 00 02 70 08 03 00 00 00 a0 14 c0 |.......p........| +00000020 8d 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 8f |....TPLTE...GGG.| 00000030 8f 8f a7 a7 a7 63 b8 ff c3 c3 c3 8b 8b 8b 9f 9f |.....c..........| 00000040 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f |.......???......| 00000050 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 |ttt111SSS___999r| @@ -8,26 +8,26 @@ 00000070 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff be 71 ff |f.............q.| 00000080 3f 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 |?....tRNS.@..f..| 00000090 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 |..pHYs..........| -000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec 7d 89 |+.... .IDATx..}.| -000000b0 76 eb 38 0e 65 e6 1c 77 3b 4e 32 d3 ae 7a 55 f5 |v.8.e..w;N2..zU.| -000000c0 ea 24 ff ff 9f 63 4b b2 ad 85 0b 76 82 12 ee e9 |.$...cK....v....| -000000d0 ae 17 4b 24 00 82 eb 25 28 e9 ed 2d 10 08 04 02 |..K$...%(..-....| -000000e0 81 40 20 10 08 04 02 81 40 20 10 08 04 02 81 40 |.@ .....@ .....@| -000000f0 20 10 08 04 02 81 40 20 10 08 04 02 81 40 20 10 | .....@ .....@ .| -00000100 08 04 02 81 40 20 10 08 04 02 81 40 20 10 08 04 |....@ .....@ ...| -00000110 02 81 40 20 10 08 04 02 81 40 20 10 08 04 02 81 |..@ .....@ .....| -00000120 b7 df 0e d1 da 27 81 40 20 10 08 04 02 81 40 20 |.....'.@ .....@ | -00000130 10 e8 1f bf ff 75 87 e0 bb 81 40 20 10 08 04 02 |.....u....@ ....| -00000140 81 40 20 10 60 23 f8 6e 20 10 08 04 02 81 40 20 |.@ .`#.n .....@ | -00000150 10 08 04 f6 88 e0 bb 81 40 20 10 08 04 02 81 40 |........@ .....@| -00000160 20 10 d8 23 82 ef 06 02 81 40 20 10 08 04 02 81 | ..#.....@ .....| -00000170 40 60 8f 08 be 1b 08 04 02 81 40 20 10 08 04 02 |@`........@ ....| -00000180 81 3d 22 f8 6e 20 10 08 04 02 81 40 20 10 08 04 |.=".n .....@ ...| -00000190 f6 88 e0 bb 81 40 20 10 08 04 02 81 40 20 10 d8 |.....@ .....@ ..| -000001a0 23 ca 7c f7 d7 1f bf be d7 97 96 17 fe f9 63 9e |#.|...........c.| -000001b0 7a 95 f6 cf bf af b9 b4 39 79 c1 77 03 81 40 20 |z.......9y.w..@ | -000001c0 10 08 04 02 81 40 20 40 c3 e9 34 ff 55 e6 bb d7 |.....@ @..4.U...| -000001d0 3f 7f fd 03 e7 bb d7 3f 57 69 ff ba 66 d3 06 df |?......?Wi..f...| -000001e0 0d 04 02 81 40 20 10 08 04 02 81 80 2c 4e 77 3c |....@ ......,Nw<| -000001f0 7f 95 f9 ee 5f 55 7e 3a e7 b0 9b d4 7f 2f 09 30 |...._U~:...../.0| +000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec bd eb |+.... .IDATx....| +000000b0 ba eb a6 b2 b5 db 7f 38 d3 dd 76 ff f6 72 32 92 |.......8..v..r2.| +000000c0 8c 3c f6 fd df e7 b6 75 b2 0e 88 63 15 34 50 7b |.<.....u...c.4P{| +000000d0 9f b5 66 46 97 a1 28 a0 84 68 02 49 5f 5f 84 10 |..fF..(..h.I__..| +000000e0 42 08 21 84 10 42 08 21 84 10 42 08 21 84 10 42 |B.!..B.!..B.!..B| +000000f0 08 21 84 10 42 08 21 84 10 42 08 21 84 10 42 08 |.!..B.!..B.!..B.| +00000100 21 84 10 42 08 21 84 10 42 08 21 84 10 42 08 21 |!..B.!..B.!..B.!| +00000110 84 10 42 88 20 bf 8b 50 ba d6 84 10 42 08 21 84 |..B. ..P....B.!.| +00000120 10 42 48 2b fc fe af 00 54 f6 84 10 42 08 21 84 |.BH+....T...B.!.| +00000130 10 42 88 10 54 f6 84 10 42 08 21 84 10 42 48 cd |.B..T...B.!..BH.| +00000140 50 d9 13 42 08 21 84 10 42 08 21 35 43 65 4f 08 |P..B.!..B.!5CeO.| +00000150 21 84 10 42 08 21 84 d4 0c 95 3d 21 84 10 42 08 |!..B.!....=!..B.| +00000160 21 84 10 52 33 54 f6 84 10 42 08 21 84 10 42 48 |!..R3T...B.!..BH| +00000170 cd 50 d9 13 42 08 21 84 10 42 08 21 35 63 57 f6 |.P..B.!..B.!5cW.| +00000180 bf fe fc f5 58 1f 5a 1e f8 f7 cf 79 ea 55 da bf |....X.Z....y.U..| +00000190 fe b9 1b b2 50 d9 13 42 08 21 84 10 42 08 21 62 |....P..B.!..B.!b| +000001a0 d8 95 fd fd af 5f ff fa 2b fb fb 5f ab b4 7f df |....._..+.._....| +000001b0 4d 59 a8 ec 09 21 84 10 42 08 21 84 90 14 4e a7 |MY...!..B.!...N.| +000001c0 d9 1f 76 65 ff f7 f6 90 45 d9 6f 52 ff f3 97 87 |..ve....E.oR....| +000001d0 b2 5f b8 43 08 21 84 10 42 08 21 84 10 07 a7 37 |._.C.!..B.!....7| +000001e0 d3 5f 73 65 ff ef 3f 8f bf 7f fd 7a fc f5 12 e4 |._se..?....z....| +000001f0 7f fd fd f8 fb af f7 f6 fa 97 2a 7f 1d f9 fb f1 |..........*.....| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00047.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00047.html 2023-01-07 18:00:49.403085224 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00047.html 2023-01-07 18:00:49.403085224 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_lib_version.h File Reference +libspf2: src/include/spf_dns_test.h File Reference @@ -44,127 +44,116 @@
-
spf_lib_version.h File Reference
+Functions
+
spf_dns_test.h File Reference
-

Autogenerated configuration information - do not edit. +

A testing layer for DNS. More...

-
+
#include "spf_dns.h"
+
+Include dependency graph for spf_dns_test.h:
+
+
+ + + + + + + + + + + + + +
+
This graph shows which files directly or indirectly include this file:
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
+ + + + + +

Go to the source code of this file.

-Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_dns_server_t
&#href_anchor"memberdecls">

Macros

#define ns_t_invalid   0
 
#define ns_t_a   1
 
#define ns_t_ns   2
 
#define ns_t_cname   5
 
#define ns_t_ptr   12
 
#define ns_t_mx   15
 
#define ns_t_txt   16
 
#define ns_t_aaaa   28
 
#define ns_t_any   255
 
#define ns_t_spf   99
 
#define ns_t_invalid   0
 
#define NETDB_SUCCESS   0
 
#define HOST_NOT_FOUND   1
 
#define TRY_AGAIN   2
 
#define NO_RECOVERY   3
 
#define NO_DATA   4
 
#href_anchor"memItemRight" valign="bottom">__attribute__(x)
 
#define SPF_VERSION   1
 
#define SPF_VER_STR   "v=spf1"
 
#define SPF_C_ERR_MSG_SIZE   (2*80)
 
#define SPF_SMTP_COMMENT_SIZE   (4*80)
 
#define SPF_RECEIVED_SPF_SIZE   (6*80)
 
#define SPF_SYSLOG_SIZE   (10*80)
 
#define SPF_DEFAULT_MAX_DNS_MECH   10
 
- - - - - - - + + +

-Macros

#href_anchor"memItemRight" valign="bottom">SPF_LIB_VERSION_MAJOR   1
 
#define SPF_LIB_VERSION_MINOR   2
 
#define SPF_LIB_VERSION_PATCH   11
 

+Functions

SPF_dns_server_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_test_new (SPF_dns_server_t *layer_below, const char *name, int debug)
 

Detailed Description

-

Autogenerated configuration information - do not edit.

- -

Definition in file spf_lib_version.h.

-

Macro Definition Documentation

- -

◆ SPF_LIB_VERSION_MAJOR

+

A testing layer for DNS.

+

The test DNS layer is actually just a thin wrapper around the zone DNS layer. It provides all the DNS information needed to do the SPF regression tests. This happens to be useful to me when I'm developing the library on my laptop and am not connected to the net.

+

While multiple test DNS layers can be created, I can't see any use for more than one.

+

For an overview of the DNS layer system, see spf_dns.h

+ +

Definition in file spf_dns_test.h.

+

Function Documentation

+ +

◆ SPF_dns_test_new()

- + + + + -
#define SPF_LIB_VERSION_MAJOR   1SPF_dns_server_t * SPF_dns_test_new (SPF_dns_server_t * layer_below,
-
- -

Definition at line 8 of file spf_lib_version.h.

- -
-
- -

◆ SPF_LIB_VERSION_MINOR

- -
-
- - + + + + + + + + + + -
#define SPF_LIB_VERSION_MINOR   2const char * name,
int debug 
-
- -

Definition at line 9 of file spf_lib_version.h.

- -
-
- -

◆ SPF_LIB_VERSION_PATCH

- -
-
- - + + +
#define SPF_LIB_VERSION_PATCH   11)
+

These routines take care of creating/destroying/etc. the objects that hold the DNS layer configuration. SPF_dns_server_t objects contain malloc'ed data, so they must be destroyed when you are finished with them, or you will leak memory.

+ +

Definition at line 437 of file spf_dns_test.c.

-

Definition at line 10 of file spf_lib_version.h.

+

References array_elem, debug, NULL, SPF_dns_zone_add_str(), SPF_dns_zone_new(), SPF_E_SUCCESS, and SPF_error.

+
+Here is the call graph for this function:
+
+
+ + + Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00047_aba233de6dbc888a571b25b2de1fad440_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00047_aba233de6dbc888a571b25b2de1fad440_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00047_source.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00047_source.html 2023-01-07 18:00:49.423085369 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00047_source.html 2023-01-07 18:00:49.423085369 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_lib_version.h Source File +libspf2: src/include/spf_dns_test.h Source File @@ -43,17 +43,38 @@
-
spf_lib_version.h
+
spf_dns_test.h
-Go to the documentation of this file.
1
-
5#href_anchor"line"> 6#define INC_SPF_VERSION
-
7
-
8#define SPF_LIB_VERSION_MAJOR 1
-
9#define SPF_LIB_VERSION_MINOR 2
-
10#define SPF_LIB_VERSION_PATCH 11
-
11
-
12#endif
+Go to the documentation of this file.
1/*
+
2 * This program is free software; you can redistribute it and/or modify
+
3 * it under the terms of either:
+
4 *
+
5 * a) The GNU Lesser General Public License as published by the Free
+
6 * Software Foundation; either version 2.1, or (at your option) any
+
7 * later version,
+
8 *
+
9 * OR
+
10 *
+
11 * b) The two-clause BSD license.
+
12 *
+
13 * These licenses can be found with the distribution in the file LICENSES
+
14 */
+
15
+
16
+
17
+
18
+
19#href_anchor"line"> 20#define INC_SPF_DNS_TEST
+
21
+
22#include "spf_dns.h"
+
23
+
46SPF_dns_server_t *SPF_dns_test_new( SPF_dns_server_t *layer_below,
+
47 const char *name, int debug);
+
48
+
49#endif
+ +
SPF_dns_server_t * SPF_dns_test_new(SPF_dns_server_t *layer_below, const char *name, int debug)
Definition: spf_dns_test.c:437
+
#define debug
-
spf_sys_config.h File Reference
+Data Structures | +Macros | +Functions
+
spf_record.h File Reference
-
#include "spf_win32_internal.h"
+
#include "spf_response.h"
+#href_anchor"el" href="a00008_source.html">spf_request.h"
+#include "spf_server.h"
-Include dependency graph for spf_sys_config.h:
+Include dependency graph for spf_record.h:
- - - + + + + + + + + + + +
This graph shows which files directly or indirectly include this file:
- - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Go to the source code of this file.

- - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_a15b6ae27bf7ee04904f978958a45575c_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_a15b6ae27bf7ee04904f978958a45575c_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_a23e3070faf833397247973356e044092_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_a23e3070faf833397247973356e044092_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_a974873aedf7fada6e6efbe79b7b16ea3_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_a974873aedf7fada6e6efbe79b7b16ea3_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_ab2d1a6a0420741ad6c0e0014682c8ffd_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00050_ab2d1a6a0420741ad6c0e0014682c8ffd_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00050_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00050_source.html 2023-01-07 18:00:49.511086009 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00050_source.html 2023-01-07 18:00:49.519086067 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_sys_config.h Source File +libspf2: src/include/spf_record.h Source File @@ -43,7 +43,7 @@
-
spf_sys_config.h
+
spf_record.h
Go to the documentation of this file.
1/*
@@ -64,66 +64,246 @@
16
17
18
-
19#href_anchor"line"> 20#define INC_SPF_SYS_CONFIG
+
19#href_anchor"line"> 20#define INC_SPF_RECORD
21
-
22#include "spf_win32_internal.h"
-
23
-
24#href_anchor"line"> 25# include "config.h"
-
26#endif
-
27
-
28#ifdef HAVE_SYS_TYPES_H
-
29#include <sys/types.h> /* types (u_char .. etc..) */
-
30#endif
-
31
-
32#ifdef HAVE_SYS_SOCKET_H
-
33# include <sys/socket.h> /* inet_ functions / structs */
-
34#endif
-
35#ifdef HAVE_NETINET_IN_H
-
36# include <netinet/in.h> /* inet_ functions / structs */
-
37#endif
-
38#ifdef HAVE_ARPA_NAMESER_H
-
39# ifdef HAVE_NS_TYPE
-
40# include <arpa/nameser.h> /* DNS HEADER struct */
-
41# else
-
42/* looks like they have bind4/8 include files, use bind9 */
-
43# define HAVE_BIND8
-
44# include "../libreplace/arpa_nameser.h"
-
45# define HAVE_NS_TYPE 1 /* we have it now */
-
46# endif
-
47#endif
-
48#ifdef HAVE_ARPA_INET_H
-
49# include <arpa/inet.h> /* in_addr struct */
-
50#endif
-
51
-
52#ifndef HAVE_U_INT8_T
-
53# ifdef HAVE_UINT8_T
-
54 typedef uint8_t u_int8_t;
-
55# else
-
56 typedef unsigned char u_int8_t;
-
57# endif
-
58#endif
-
59
-
60#ifndef HAVE_U_INT16_T
-
61# ifdef HAVE_UINT16_T
-
62 typedef uint16_t u_int16_t;
-
63# else
-
64 typedef unsigned short u_int16_t;
-
65# endif
-
66#endif
-
67
-
68#ifndef HAVE_U_INT32_T
-
69# ifdef HAVE_UINT32_T
-
70 typedef uint32_t u_int32_t;
-
71# else
-
72 typedef unsigned int u_int32_t;
-
73# endif
-
74#endif
-
75
-
76#endif
- -
unsigned int u_int32_t
-
unsigned short u_int16_t
-
unsigned char u_int8_t
+
22typedef struct SPF_record_struct SPF_record_t;
+
23typedef struct SPF_macro_struct SPF_macro_t;
+
24
+
25#href_anchor"code" href="a00035.html">spf_response.h"
+
26#include "spf_request.h"
+
27#href_anchor"code" href="a00017.html">spf_server.h"
+
28
+
73#define SPF_MAX_STR_LEN 255 /* limits on SPF_data_str_t.len, */
+
74 /* SPF_mod_t.name_len and */
+
75 /* SPF_mod_t.data_len */
+
76
+
77#define SPF_MAX_MECH_LEN 511
+
78#define SPF_MAX_MOD_LEN 511
+
79
+
80
+
81
+
82
+
83
+
84
+
88#define PARM_LP_FROM 0
+
89#define PARM_ENV_FROM 1
+
90#define PARM_DP_FROM 2
+
91#define PARM_CUR_DOM 3
+
92#define PARM_CLIENT_IP 4
+
93#define PARM_CLIENT_IP_P 5
+
94#define PARM_TIME 6
+
95#define PARM_CLIENT_DOM 7
+
96#define PARM_CLIENT_VER 8
+
97#define PARM_HELO_DOM 9
+
98#define PARM_REC_DOM 10
+
99#define PARM_CIDR 11
+
100#define PARM_STRING 12
+
103typedef
+
104struct SPF_data_str_struct
+
105{
+
106 unsigned char parm_type;
+
107 unsigned char len; /* XXX Does this need to be size_t? */
+
108 unsigned char __unused0;
+
109 unsigned char __unused1;
+
110 /* text: (char[len]) follows */
+ +
112
+
113
+
114typedef
+
115struct SPF_data_var_struct
+
116{
+
117 unsigned char parm_type;
+
118 unsigned char num_rhs;
+
119 unsigned short rev: 1;
+
120 unsigned short url_encode: 1;
+
121 unsigned short delim_dot: 1;
+
122 unsigned short delim_dash: 1;
+
123 unsigned short delim_plus: 1;
+
124 unsigned short delim_equal: 1;
+
125 unsigned short delim_bar: 1;
+
126 unsigned short delim_under: 1;
+ +
128
+
129typedef
+
130struct SPF_data_cidr_struct
+
131{
+
132 unsigned char parm_type;
+
133 unsigned char ipv4;
+
134 unsigned char ipv6;
+
135 unsigned char __unused0;
+ +
139
+
140typedef
+
141union SPF_data_union
+
142{
+ + + +
146} SPF_data_t;
+
147
+
148
+
149
+
153#define PREFIX_PASS SPF_RESULT_PASS
+
154#define PREFIX_FAIL SPF_RESULT_FAIL
+
155#define PREFIX_SOFTFAIL SPF_RESULT_SOFTFAIL
+
156#define PREFIX_NEUTRAL SPF_RESULT_NEUTRAL
+
157#define PREFIX_UNKNOWN SPF_RESULT_PERMERROR
+
158
+
162#define MECH_UNKNOWN 0
+
163#define MECH_A 1
+
164#define MECH_MX 2
+
165#define MECH_PTR 3
+
166#define MECH_INCLUDE 4
+
167#define MECH_IP4 5
+
168#define MECH_IP6 6
+
169#define MECH_EXISTS 7
+
170#define MECH_ALL 8
+
171#define MECH_REDIRECT 9
+
172
+
173typedef
+
174struct SPF_mech_struct
+
175{
+
176 unsigned char prefix_type;
+
177 unsigned char mech_type;
+
178 unsigned short mech_len;
+
180} SPF_mech_t;
+
181
+
182
+
183/*
+
184 * Modifiers
+
185 */
+
186typedef
+
187struct SPF_mod_struct
+
188{
+
189 unsigned short name_len;
+
190 unsigned short data_len;
+
193} SPF_mod_t;
+
194
+
195
+
196
/usr/share/doc/packages/spf2-apidocs/html/a00051.png differs at offset '19' (PNG image data, 153 x 128, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00051.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00051.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 00 99 00 00 00 80 08 03 00 00 00 2f 5b 3b |............./[;| -00000020 db 00 00 00 4b 50 4c 54 45 fe ff ff 63 b8 ff c3 |....KPLTE...c...| -00000030 c3 c3 a7 a7 a7 9f 9f 9f bf bf bf df df df 3f 3f |..............??| -00000040 3f 1f 1f 1f 7f 7f 7f 74 74 74 31 31 31 53 53 53 |?......ttt111SSS| -00000050 5f 5f 5f 39 39 39 72 72 72 85 85 85 26 26 26 13 |___999rrr...&&&.| -00000060 13 13 4c 4c 4c 66 66 66 99 99 99 d3 d3 d3 00 00 |..LLLfff........| -00000070 00 ff ff ff 48 11 45 82 00 00 00 01 74 52 4e 53 |....H.E.....tRNS| -00000080 00 40 e6 d8 66 00 00 00 09 70 48 59 73 00 00 0e |.@..f....pHYs...| -00000090 c4 00 00 0e c4 01 95 2b 0e 1b 00 00 04 5c 49 44 |.......+.....\ID| -000000a0 41 54 78 9c ed 99 0d 7b 9b 20 10 c7 db 4d 11 b7 |ATx....{. ...M..| -000000b0 9d 02 ce 87 7c ff 4f ba 7b 01 45 63 33 49 52 63 |....|.O.{.Ec3IRc| -000000c0 37 fe 7d 1a cb 71 1c 3f b9 43 c9 d3 b7 b7 a2 a2 |7.}..q.?.C......| -000000d0 22 d6 ef 53 68 93 6c 3c 81 0a 59 be 0a 59 be 0a |"..Sh.l<..Y..Y..| -000000e0 59 be ee 20 33 9d f1 6b d3 d2 30 74 a9 f7 ca b7 |Y.. 3..k..0t....| -000000f0 77 f0 59 64 d0 9b 61 3f 19 f4 2b 5f bb 0f ec 1e |w.Yd..a?..+_....| -00000100 32 7b 6d ba 41 76 e5 ed d6 a8 f7 92 0d ce 5b 63 |2{m.Av........[c| -00000110 7c 8f 01 7b eb 6d 4f e9 41 10 b4 58 4f 00 6c 64 ||..{.mO.A..XO.ld| -00000120 03 36 3a c0 64 f9 ae c3 0e 83 76 90 64 72 08 74 |.6:.d.....v.dr.t| -00000130 1c 9c 1b 46 eb e7 6c 4a 07 79 8f de 84 d6 6e b2 |...F..lJ.y....n.| -00000140 de f7 a6 b3 c6 77 88 e4 c1 0c 6e 04 10 b2 ce 18 |.....w....n.....| -00000150 07 c1 38 93 51 1b 08 d9 0d 86 ee 06 bd 25 04 5e |..8.Q........%.^| -00000160 3a 43 35 36 af 59 ec 70 98 73 17 5b 39 64 9c 2d |:C56.Y.p.s.[9d.-| -00000170 bc 19 a0 61 80 f5 2f 64 68 e9 86 60 fc 31 91 0d |...a../dh..`.1..| -00000180 d4 b6 1d 4f 37 62 03 bd 25 04 5e 46 8e b1 20 8b |...O7b..%.^F.. .| -00000190 f9 b5 c3 d4 da 9d 4d 08 d9 9a aa c7 8e e3 b4 44 |......M........D| -000001a0 43 30 46 83 85 6e 10 4f f0 0e 65 b9 cc 38 84 b0 |C0F..n.O..e..8..| -000001b0 e2 47 52 67 d2 81 e9 0c 77 ce ad bd 64 86 86 38 |.GRg....w...d..8| -000001c0 21 a3 59 86 5f b0 24 63 e3 8f 89 8c 49 b1 72 78 |!.Y._.$c....I.rx| -000001d0 2d 8d 01 88 21 36 d6 2c 74 d0 73 c4 ce ad bd 64 |-...!6.,t.s....d| -000001e0 48 25 75 34 4a 49 f9 9f 66 41 26 46 26 03 5c a8 |H%u4JI..fA&F&.\.| -000001f0 55 9d 41 67 62 88 8d 3a 0b 1d e8 4b 9b 62 6a ed |U.Agb..:...K.bj.| +00000010 00 00 02 18 00 00 01 9b 08 03 00 00 00 b1 96 19 |................| +00000020 c9 00 00 00 60 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....`PLTE......T| +00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| +00000040 70 e0 e0 e0 a7 a7 a7 63 b8 ff 9f 9f 9f bf bf bf |p......c........| +00000050 df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f 74 74 74 31 |...???......ttt1| +00000060 31 31 53 53 53 5f 5f 5f 39 39 39 72 72 72 85 85 |11SSS___999rrr..| +00000070 85 26 26 26 13 13 13 4c 4c 4c 66 66 66 99 99 99 |.&&&...LLLfff...| +00000080 d3 d3 d3 00 00 00 ff ff ff 92 61 bf 53 00 00 00 |..........a.S...| +00000090 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 09 70 48 |.tRNS.@..f....pH| +000000a0 59 73 00 00 0e c4 00 00 0e c4 01 95 2b 0e 1b 00 |Ys..........+...| +000000b0 00 1b 52 49 44 41 54 78 9c ed 9d 89 76 e3 a0 92 |..RIDATx....v...| +000000c0 86 9d a5 93 1e ed 77 46 59 3a 37 47 7e ff b7 1c |......wFY:7G~...| +000000d0 40 b2 56 90 40 50 45 81 f8 4f b7 63 4b 08 aa 8a |@.V.@PE..O.cK...| +000000e0 4f 05 da ec db 2d 29 29 29 29 29 29 29 29 29 29 |O....-))))))))))| +000000f0 44 fd 37 00 f9 8e d1 25 f5 df 5f f2 4a 60 f8 50 |D.7....%.._.J`.P| +00000100 02 23 49 aa 04 46 92 54 09 8c 24 a9 12 18 49 52 |.#I..F.T..$...IR| +00000110 25 30 92 a4 4a 60 24 49 b5 0f c6 d7 c7 57 b7 5e |%0..J`$I.....W.^| +00000120 b4 5c f0 f3 31 2f bd 2a fb f9 af 35 00 a0 af 6a |.\..1/.*...5...j| +00000130 d3 60 02 c3 8b f6 c1 68 3f bf 7e 56 8b 76 c0 68 |.`.....h?.~V.v.h| +00000140 3f 57 65 bf 4d b8 48 60 90 d2 3e 18 df db 45 3b |?We.M.H`..>...E;| +00000150 60 6c 4a ff 5b 93 b2 ab 04 06 25 cd c1 f8 f9 d7 |`lJ.[.....%.....| +00000160 7d 7f 7d 75 9f ac 3f 3f bf bb ef 4f 3e 36 b0 7e |}.}u..??...O>6.~| +00000170 62 4b be 3b de 69 62 a1 58 c0 3e 7c b4 6c a4 e8 |bK.;.ib.X.>|.l..| +00000180 3e 3e d8 8a 2f b6 bc ed 47 12 51 05 2b f8 f3 ef |>>../...G.Q.+...| +00000190 df cf ef 77 37 0e 25 7d ad 43 c1 be 72 fe 87 ad |...w7.%}.C..r...| +000001a0 1f da 1b aa e2 25 5b 56 47 02 c3 b7 66 60 7c 76 |.....%[VG...f`|v| +000001b0 9f 5f 1f df 5f dd c7 27 ef 9d af 9f 7f bf 6d db |._.._..'......m.| +000001c0 83 f1 f1 f5 25 ba 90 2f 9c c0 e0 9f 5b 4e cc bf |....%../....[N..| +000001d0 9f 2f de b9 ac 74 5f 05 fb f3 f1 c5 e7 17 53 c6 |./...t_.......S.| +000001e0 10 b5 0e 05 87 ca bf f8 27 56 fe d1 9e a8 ea 77 |........'V.....w| +000001f0 6c 2d 81 e1 57 4b 30 44 c7 7c b1 d9 02 df 65 5b |l-..WK0D.|....e[| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00052.png differs at offset '19' (PNG image data, 4229 x 144, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00052.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00052.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 10 85 00 00 00 90 08 03 00 00 00 bf e9 9c |................| -00000020 ed 00 00 00 51 50 4c 54 45 fe ff ff 8f 8f 8f c3 |....QPLTE.......| -00000030 c3 c3 a7 a7 a7 63 b8 ff 8b 8b 8b 9f 9f 9f bf bf |.....c..........| -00000040 bf df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f 74 74 74 |....???......ttt| -00000050 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 72 72 85 |111SSS___999rrr.| -00000060 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 66 99 99 |..&&&...LLLfff..| -00000070 99 d3 d3 d3 00 00 00 ff ff ff 80 24 a5 bf 00 00 |...........$....| -00000080 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 09 70 |..tRNS.@..f....p| -00000090 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b 0e 1b |HYs..........+..| -000000a0 00 00 20 00 49 44 41 54 78 9c ed 9d 0f 7b fa aa |.. .IDATx....{..| -000000b0 96 b6 fb ce db a3 56 67 26 ad 6d 7f bd f4 fb 7f |......Vg&.m.....| -000000c0 d0 91 40 12 54 92 00 01 d6 b3 da e7 be ce d9 7b |..@.T..........{| -000000d0 ab 31 dc 2c fe 86 c6 f0 f2 42 08 21 84 10 42 08 |.1.,.....B.!..B.| -000000e0 21 84 10 42 08 21 84 10 42 08 21 84 10 42 08 21 |!..B.!..B.!..B.!| -000000f0 84 10 42 08 21 84 10 42 08 21 84 10 42 08 21 84 |..B.!..B.!..B.!.| -00000100 10 42 08 21 84 10 42 08 21 84 10 42 08 21 84 10 |.B.!..B.!..B.!..| -00000110 42 7e 0b ff 20 90 8e 02 21 84 10 42 08 21 84 10 |B~.. ...!..B.!..| -00000120 42 ea f3 ef 07 00 ae 42 10 42 08 21 84 10 42 08 |B......B.B.!..B.| -00000130 21 7f 00 ae 42 10 42 08 21 84 10 42 08 21 a4 0d |!...B.B.!..B.!..| -00000140 5c 85 20 84 10 42 08 21 84 10 42 48 1b b8 0a 41 |\. ..B.!..BH...A| -00000150 08 21 84 10 42 08 21 84 90 36 70 15 82 10 42 08 |.!..B.!..6p...B.| -00000160 21 84 10 42 08 21 6d e0 2a 04 21 84 10 42 08 21 |!..B.!m.*.!..B.!| -00000170 84 10 42 da c0 55 08 42 08 21 84 10 42 08 21 84 |..B..U.B.!..B.!.| -00000180 b4 61 71 15 e2 fc 7e be 3c be 75 ff c6 f7 bb 7f |.aq...~.<.u.....| -00000190 f4 c3 b1 1f 5f 1d 57 21 08 21 84 10 42 08 21 84 |...._.W!.!..B.!.| -000001a0 10 e2 58 5c 85 e8 3e ce df f1 ab 10 dd c7 c3 b1 |..X\..>.........| -000001b0 9f 91 8b 10 5c 85 20 84 10 42 08 21 84 10 42 fe |....\. ..B.!..B.| -000001c0 02 8b ab 10 9f cf 6f 2d ac 42 3c 1d fd f5 b8 2c |......o-.B<....,| -000001d0 c1 55 08 42 08 21 84 10 42 08 21 e4 0f e3 ad 42 |.U.B.!..B.!....B| -000001e0 7c 7f 5d 3e cf e7 cb c7 d7 c7 cf c7 e7 e5 f3 c3 ||.]>............| -000001f0 fc c4 e2 7c b9 fd ef f6 ca 2c 36 f4 6f f6 6f dc |...|.....,6.o.o.| +00000010 00 00 12 a1 00 00 02 05 08 03 00 00 00 7b 07 10 |.............{..| +00000020 5f 00 00 00 54 50 4c 54 45 fe ff ff 47 47 47 8f |_...TPLTE...GGG.| +00000030 8f 8f a7 a7 a7 63 b8 ff c3 c3 c3 8b 8b 8b 9f 9f |.....c..........| +00000040 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f 7f 7f |.......???......| +00000050 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 |ttt111SSS___999r| +00000060 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 |rr...&&&...LLLff| +00000070 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff be 71 ff |f.............q.| +00000080 3f 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 |?....tRNS.@..f..| +00000090 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 |..pHYs..........| +000000a0 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ec bd 89 |+.... .IDATx....| +000000b0 72 23 b7 d2 46 a9 88 91 7f 8a a2 66 2e ed b6 dd |r#..F......f....| +000000c0 0e e9 fd df 73 48 16 97 5a b0 23 01 24 50 e7 c4 |....sH..Z.#.$P..| +000000d0 8d db 56 11 48 7c 99 58 0a 48 16 c9 b7 37 00 00 |..V.H|.X.H...7..| +000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| +* +00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 19 7e eb |..............~.| +00000110 a7 75 88 00 00 00 00 00 00 00 00 a0 28 bf ff d3 |.u..........(...| +00000120 0e 19 2a 00 00 00 00 00 00 00 80 b1 21 43 05 00 |..*.........!C..| +00000130 00 00 00 00 00 00 00 6d 21 43 05 00 00 00 00 00 |.......m!C......| +00000140 00 00 00 6d 21 43 05 00 00 00 00 00 00 00 00 6d |...m!C.........m| +00000150 21 43 05 00 00 00 00 00 00 00 00 6d 21 43 05 00 |!C.........m!C..| +00000160 00 00 00 00 00 00 00 6d 21 43 05 00 00 00 00 00 |.......m!C......| +00000170 00 00 00 6d 71 66 a8 7e fd f9 eb 7b 7d 69 79 e1 |...mqf.~...{}iy.| +00000180 df 3f e7 a5 57 65 ff fa e7 1c 91 89 9a 4c 6d 1a |.?..We.......Lm.| +00000190 24 43 05 00 00 00 00 00 00 00 30 38 ce 0c d5 f9 |$C........08....| +000001a0 af 5f ff 86 67 a8 ce 7f ad ca fe 1d 93 a0 22 43 |._..g........."C| +000001b0 05 00 00 00 00 00 00 00 b0 1b de df e7 7f 39 33 |..............93| +000001c0 54 7f 6f 2f 39 32 54 9b d2 ff ac 53 56 4e c8 50 |T.o/92T....SVN.P| +000001d0 01 00 00 00 00 00 00 00 ec 85 f7 1b 8f bf 66 19 |..............f.| +000001e0 aa 7f ff f9 fe fb d7 af ef bf fe f9 eb bf bf fe |................| +000001f0 fe fe fb af eb c7 f6 7e 7d 5f fe 77 f9 eb 9a 3d |.......~}_.w...=| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00053.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00053.html 2023-01-07 18:00:49.555086329 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00053.html 2023-01-07 18:00:49.555086329 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_dns_resolv.h File Reference +libspf2: src/include/spf_sys_config.h File Reference @@ -44,83 +44,118 @@
-
spf_dns_resolv.h File Reference
+Typedefs
+
spf_sys_config.h File Reference
-
+
+Include dependency graph for spf_sys_config.h:
+
+
+ + + + +
+
This graph shows which files directly or indirectly include this file:
-
- - - - - - +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

Go to the source code of this file.

-Typedefs

typedef unsigned char&#href_anchor"memItemRight" valign="bottom">u_int8_t
 
typedef unsigned short u_int16_t
 
typedef unsigned int u_int32_t
 

+Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_data_str_t
&#href_anchor"memitem:">struct  SPF_data_var_t
&#href_anchor"memitem:">struct  SPF_data_cidr_t
&#href_anchor"memitem:">union  SPF_data_t
&#href_anchor"memitem:">struct  SPF_mech_t
&#href_anchor"memitem:">struct  SPF_mod_t
&#href_anchor"memitem:">struct  SPF_record_t
&#href_anchor"memitem:">struct  SPF_macro_t
&#href_anchor"memberdecls"> +

+Macros

#define SPF_MAX_STR_LEN   255 /* limits on SPF_data_str_t.len, */
 
#define SPF_MAX_MECH_LEN   511
 
#define SPF_MAX_MOD_LEN   511
 
#define PARM_LP_FROM   0
 
#define PARM_ENV_FROM   1
 
#define PARM_DP_FROM   2
 
#define PARM_CUR_DOM   3
 
#define PARM_CLIENT_IP   4
 
#define PARM_CLIENT_IP_P   5
 
#define PARM_TIME   6
 
#define PARM_CLIENT_DOM   7
 
#define PARM_CLIENT_VER   8
 
#define PARM_HELO_DOM   9
 
#define PARM_REC_DOM   10
 
#define PARM_CIDR   11
 
#define PARM_STRING   12
 
#define PREFIX_PASS   SPF_RESULT_PASS
 
#define PREFIX_FAIL   SPF_RESULT_FAIL
 
#define PREFIX_SOFTFAIL   SPF_RESULT_SOFTFAIL
 
#define PREFIX_NEUTRAL   SPF_RESULT_NEUTRAL
 
#define PREFIX_UNKNOWN   SPF_RESULT_PERMERROR
 
#define MECH_UNKNOWN   0
 
#define MECH_A   1
 
#define MECH_MX   2
 
#define MECH_PTR   3
 
#define MECH_INCLUDE   4
 
#define MECH_IP4   5
 
#define MECH_IP6   6
 
#define MECH_EXISTS   7
- - - + + + + + + +

-Functions

SPF_dns_server_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_resolv_new (SPF_dns_server_t *layer_below, const char *name, int debug)
 

+Typedefs

typedef unsigned char&#href_anchor"memItemRight" valign="bottom">u_int8_t
 
typedef unsigned short u_int16_t
 
typedef unsigned int u_int32_t
 
-

Detailed Description

-

The resolv DNS layer is an interface to the libresolv stub DNS resolver.

-

While multiple resolv DNS layers can be created, I can't see much use for more than one.

-

For an overview of the DNS layer system, see spf_dns.h

- -

Definition in file spf_dns_resolv.h.

-

Function Documentation

- -

◆ SPF_dns_resolv_new()

+

Typedef Documentation

+ +

◆ u_int16_t

- - - - - - - - - - - - - - - - + +
SPF_dns_server_t * SPF_dns_resolv_new (SPF_dns_server_t * layer_below,
const char * name,
int debug typedef unsigned short u_int16_t
+
+ +

Definition at line 64 of file spf_sys_config.h.

+ +
+
+ +

◆ u_int32_t

+ +
+
+ - - - +
)typedef unsigned int u_int32_t
-

These routines take care of creating/destroying/etc. the objects that hold the DNS layer configuration. SPF_dns_server_t objects contain malloc'ed data, so they must be destroyed when you are finished with them, or you will leak memory.

-

if debugging is enabled, information about the results from libresolv will be displayed. This information is often not passed on to (and not needed by) the higher level DNS layers.

-

Definition at line 619 of file spf_dns_resolv.c.

+

Definition at line 72 of file spf_sys_config.h.

-

References debug, NULL, and SPF_warning.

+
+
+ +

◆ u_int8_t

+ +
+
+ + + + +
typedef unsigned char u_int8_t
+
-

Referenced by SPF_server_new().

+

Definition at line 56 of file spf_sys_config.h.

/usr/share/doc/packages/spf2-apidocs/html/a00053_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00053_source.html 2023-01-07 18:00:49.571086445 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00053_source.html 2023-01-07 18:00:49.571086445 +0000 @@ -5,7 +5,7 @@ -libspf2: src/include/spf_dns_resolv.h Source File +libspf2: src/include/spf_sys_config.h Source File @@ -43,7 +43,7 @@
-
spf_dns_resolv.h
+
spf_sys_config.h
Go to the documentation of this file.
1/*
@@ -64,14 +64,66 @@
16
17
18
-
19#href_anchor"line"> 20#define INC_SPF_DNS_RESOLV
+
19#href_anchor"line"> 20#define INC_SPF_SYS_CONFIG
21
-
43SPF_dns_server_t *SPF_dns_resolv_new(SPF_dns_server_t *layer_below,
-
44 const char *name, int debug);
-
45
-
46#endif
-
SPF_dns_server_t * SPF_dns_resolv_new(SPF_dns_server_t *layer_below, const char *name, int debug)
-
#define debug
+
22#include "spf_win32_internal.h"
+
23
+
24#href_anchor"line"> 25# include "config.h"
+
26#endif
+
27
+
28#ifdef HAVE_SYS_TYPES_H
+
29#include <sys/types.h> /* types (u_char .. etc..) */
+
30#endif
+
31
+
32#ifdef HAVE_SYS_SOCKET_H
+
33# include <sys/socket.h> /* inet_ functions / structs */
+
34#endif
+
35#ifdef HAVE_NETINET_IN_H
+
36# include <netinet/in.h> /* inet_ functions / structs */
+
37#endif
+
38#ifdef HAVE_ARPA_NAMESER_H
+
39# ifdef HAVE_NS_TYPE
+
40# include <arpa/nameser.h> /* DNS HEADER struct */
+
41# else
+
42/* looks like they have bind4/8 include files, use bind9 */
+
43# define HAVE_BIND8
+
44# include "../libreplace/arpa_nameser.h"
+
45# define HAVE_NS_TYPE 1 /* we have it now */
+
46# endif
+
47#endif
+
48#ifdef HAVE_ARPA_INET_H
+
49# include <arpa/inet.h> /* in_addr struct */
+
50#endif
+
51
+
52#ifndef HAVE_U_INT8_T
+
53# ifdef HAVE_UINT8_T
+
54 typedef uint8_t u_int8_t;
+
55# else
+
56 typedef unsigned char u_int8_t;
+
57# endif
+
58#endif
+
59
+
60#ifndef HAVE_U_INT16_T
+
61# ifdef HAVE_UINT16_T
+
62 typedef uint16_t u_int16_t;
+
63# else
+
64 typedef unsigned short u_int16_t;
+
65# endif
+
66#endif
+
67
+
68#ifndef HAVE_U_INT32_T
+
69# ifdef HAVE_UINT32_T
+
70 typedef uint32_t u_int32_t;
+
71# else
+
72 typedef unsigned int u_int32_t;
+
73# endif
+
74#endif
+
75
+
76#endif
+ +
unsigned int u_int32_t
+
unsigned short u_int16_t
+
unsigned char u_int8_t
SPF_dns_rr_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_rr_new_nxdomain (SPF_dns_server_t *spf_dns_server, const char *domain)
 
SPF_dns_rr_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_rr_new_init (SPF_dns_server_t *spf_dns_server, const char *domain, ns_type rr_type, int ttl, SPF_dns_stat_t herrno)
 
SPF_dns_rr_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_rr_new ()
 
void SPF_dns_rr_free (SPF_dns_rr_t *spfrr)
&#href_anchor"memitem:aa2380951658cb6ba7ddd89a305fec681">SPF_errcode_t SPF_dns_rr_buf_realloc (SPF_dns_rr_t *spfrr, int idx, size_t len)
&#href_anchor"memitem:ac682e0d02010bfd9aaca944d8bc35713">SPF_errcode_t SPF_dns_rr_dup (SPF_dns_rr_t **dstp, SPF_dns_rr_t *src)
&#href_anchor"details" id="details">

Detailed Description

+

Audited, 2008-09-13, Shevek.

+ +

Definition in file spf_dns_rr.c.

+

Macro Definition Documentation

+ +

◆ SPF_DNS_RR_REALLOC

- + - + + + + + + + + + + + + + + + + + +
#define RETURN_DEFAULT_EXP#define SPF_DNS_RR_REALLOC () d,
 i,
 
)
-Value:
do { \
-
return SPF_server_get_default_explanation(spf_server, \
-
spf_request, spf_response, bufp, buflenp); \
-
} while(0)
+Value:
do { \
+
err = SPF_dns_rr_buf_realloc(d, i, s); \
+
if (err) return err; \
+
} while(0)
+
SPF_errcode_t SPF_dns_rr_buf_realloc(SPF_dns_rr_t *spfrr, int idx, size_t len)
Definition: spf_dns_rr.c:134
-

Definition at line 77 of file spf_get_exp.c.

+
+
+

Function Documentation

+ +

◆ SPF_dns_rr_buf_realloc()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + +
SPF_errcode_t SPF_dns_rr_buf_realloc (SPF_dns_rr_t *&#href_anchor"paramname">spfrr,
int idx,
size_t len 
)
+
- -

◆ SPF_LAME_EXP

+ +

◆ SPF_dns_rr_dup()

- + + + Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00110_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00110_a4e6b7fb4308c1c2c84769e10925b930d_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00110_ac6060857bbd9aafeb41ac938439dc995_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00110_ac6060857bbd9aafeb41ac938439dc995_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00110_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00110_ac682e0d02010bfd9aaca944d8bc35713_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00110_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00110_source.html 2023-01-07 18:00:51.003096858 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00110_source.html 2023-01-07 18:00:51.003096858 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_get_exp.c Source File +libspf2: src/libspf2/spf_dns_rr.c Source File @@ -43,262 +43,295 @@
-
spf_get_exp.c
+
spf_dns_rr.c
-Go to the documentation of this file.
1/*
+Go to the documentation of this file.
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of either:
-
4 *
+
4 *
5 * a) The GNU Lesser General Public License as published by the Free
-
6 * Software Foundation; either version 2.1, or (at your option) any
-
7 * later version,
-
8 *
+
6 * Software Foundation; either version 2.1, or (at your option) any
+
7 * later version,
+
8 *
9 * OR
-
10 *
+
10 *
11 * b) The two-clause BSD license.
12 *
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"code" href="a00050.html">spf_sys_config.h"
-
17
-
18#ifdef STDC_HEADERS
-
19# include <stdlib.h> /* malloc / free */
-
20# include <stdio.h> /* stdin / stdout */
-
21#endif
-
22
-
23#ifdef HAVE_NETDB_H
-
24#include <netdb.h>
-
25#endif
-
26
-
27#ifdef HAVE_STRING_H
-
28# include <string.h> /* strstr / strdup */
-
29#else
-
30# ifdef HAVE_STRINGS_H
-
31# include <strings.h> /* strstr / strdup */
-
32# endif
-
33#endif
-
34
+
16
+
17#href_anchor"code" href="a00053.html">spf_sys_config.h"
+
18
+
19#ifdef STDC_HEADERS
+
20# include <stdio.h> /* stdin / stdout */
+
21# include <stdlib.h> /* malloc / free */
+
22#endif
+
23
+
24#ifdef HAVE_STRING_H
+
25# include <string.h> /* strstr / strdup */
+
26#else
+
27# ifdef HAVE_STRINGS_H
+
28# include <strings.h> /* strstr / strdup */
+
29# endif
+
30#endif
+
31
+
32#ifdef HAVE_NETDB_H
+
33#include <netdb.h>
+
34#endif
35
-
36#include "spf.h"
-
37#href_anchor"code" href="a00044.html">spf_dns.h"
-
38#include "spf_internal.h"
-
39#href_anchor"code" href="a00041.html">spf_dns_internal.h"
+
36#ifdef HAVE_ARPA_NAMESER_H
+
37#include <arpa/nameser.h>
+
38#endif
+
39
40
-
41
-
42 /* This never happens. We get SPF_DEFAULT_EXP instead.
-
43 * This is a panic response which must not contain macros. */
-
44#define SPF_LAME_EXP "SPF failure: no explanation available"
-
45
-
46static SPF_errcode_t
-
47SPF_server_get_default_explanation(SPF_server_t *spf_server,
-
48 SPF_request_t *spf_request,
-
49 SPF_response_t *spf_response,
-
50 char **bufp, size_t *buflenp)
-
51{
-
52 SPF_errcode_t err;
-
53 SPF_macro_t *spf_macro;
-
54
-
55 spf_macro = spf_server->explanation;
-
56 if (spf_macro != NULL) {
-
57 err = SPF_record_expand_data(spf_server,
-
58 spf_request, spf_response,
-
59 SPF_macro_data(spf_macro), spf_macro->macro_len,
-
60 bufp, buflenp);
-
61 return err;
-
62 }
-
63 else {
-
64 size_t len = sizeof(SPF_LAME_EXP) + 1;
-
65 if (*buflenp < len) {
-
66 char *tmp = realloc(*bufp, len);
-
67 if (tmp == NULL)
-
68 return SPF_E_NO_MEMORY;
-
69 *bufp = tmp;
-
70 *buflenp = len;
-
71 }
-
72 strcpy(*bufp, SPF_LAME_EXP);
-
73 return SPF_E_SUCCESS;
-
74 }
-
75}
-
76
-
77#define RETURN_DEFAULT_EXP() do { \
-
78 return SPF_server_get_default_explanation(spf_server, \
-
79 spf_request, spf_response, bufp, buflenp); \
-
80 } while(0)
-
81
- -
83SPF_request_get_exp(SPF_server_t *spf_server,
-
84 SPF_request_t *spf_request,
-
85 SPF_response_t *spf_response,
-
86 SPF_record_t *spf_record,
-
87 char **bufp, size_t *buflenp)
-
88{
-
89 SPF_macro_t *spf_macro;
-
90 SPF_dns_server_t *resolver;
-
91 SPF_dns_rr_t *rr_txt;
-
92 SPF_errcode_t err;
-
93 const char *domain;
-
94
-
95
-
96 /*
-
97 * There are lots of places to look for the explanation message,
-
98 * some require DNS lookups, some don't.
-
99 */
-
100
-
101 SPF_ASSERT_NOTNULL(spf_server);
-
102 SPF_ASSERT_NOTNULL(spf_request);
-
103 SPF_ASSERT_NOTNULL(spf_response);
-
104 SPF_ASSERT_NOTNULL(spf_record);
-
105 SPF_ASSERT_NOTNULL(bufp);
-
106 SPF_ASSERT_NOTNULL(buflenp);
-
107
-
108 domain = spf_request->cur_dom;
+
41#include "spf.h"
+
42#href_anchor"code" href="a00011.html">spf_dns.h"
+
43#include "spf_internal.h"
+
44#href_anchor"code" href="a00041.html">spf_dns_internal.h"
+
45#include "spf_dns_rr.h"
+
46
+ +
53SPF_dns_rr_new_nxdomain(SPF_dns_server_t *spf_dns_server,
+
54 const char *domain)
+
55{
+
56 return SPF_dns_rr_new_init(spf_dns_server,
+
57 domain, ns_t_any, 0, HOST_NOT_FOUND);
+
58}
+
59
+ +
61SPF_dns_rr_new_init(SPF_dns_server_t *spf_dns_server,
+
62 const char *domain,
+
63 ns_type rr_type, int ttl,
+
64 SPF_dns_stat_t herrno)
+
65{
+
66 SPF_dns_rr_t *spfrr;
+
67
+
68 spfrr = SPF_dns_rr_new();
+
69 if (spfrr == NULL)
+
70 return spfrr;
+
71
+
72 spfrr->source = spf_dns_server;
+
73 if (domain && (domain[0] != '\0')) {
+
74 spfrr->domain = strdup(domain);
+
75 if (spfrr->domain == NULL) {
+
76 SPF_dns_rr_free(spfrr);
+
77 return NULL;
+
78 }
+
79 spfrr->domain_buf_len = strlen(domain) + 1;
+
80 }
+
81 else {
+
82 spfrr->domain = NULL;
+
83 spfrr->domain_buf_len = 0;
+
84 }
+
85 spfrr->rr_type = rr_type;
+
86 spfrr->ttl = ttl;
+
87 spfrr->herrno = herrno;
+
88
+
89 return spfrr;
/usr/share/doc/packages/spf2-apidocs/html/a00111.png differs at offset '20' (PNG image data, 945 x 427, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00111.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00111.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 03 b1 00 00 01 ab 08 03 00 00 00 21 2f e0 |.............!/.| -00000020 bf 00 00 00 63 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....cPLTE......T| +00000010 00 00 03 63 00 00 01 9b 08 03 00 00 00 7e b1 b8 |...c.........~..| +00000020 66 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |f...fPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| 00000040 70 e0 e0 e0 8b 8b 8b c3 c3 c3 a7 a7 a7 63 b8 ff |p............c..| 00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| -00000060 7f 7f 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 72 |..111SSS___999rr| -00000070 72 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 66 |r...&&&...LLLfff| -00000080 99 99 99 d3 d3 d3 00 00 00 ff ff ff a0 78 e4 11 |.............x..| -00000090 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 |....tRNS.@..f...| -000000a0 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b |.pHYs..........+| -000000b0 0e 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 89 9a |.... .IDATx.....| -000000c0 e3 2a 92 46 b3 b2 d6 e9 b6 b5 cd 28 2b 17 d7 27 |.*.F.......(+..'| -000000d0 bf ff 53 0e a0 5d d6 c2 12 40 20 ff a7 6f bb d2 |..S..]...@ ..o..| -000000e0 da 08 20 8e 41 b2 6c bf bc 00 00 00 00 00 00 00 |.. .A.l.........| -000000f0 00 00 00 00 00 9e 81 5b 6c 62 37 00 00 49 71 fb |.......[lb7..Iq.| -00000100 17 17 18 0b 80 09 30 16 80 94 80 b1 00 a4 04 8c |......0.........| -00000110 05 20 25 60 2c 00 29 01 63 01 48 09 18 0b 40 4a |. %`,.).c.H...@J| -00000120 ec 1a fb fe f6 de fc 13 ff fd fd 58 5b fb f7 b3 |...........X[...| -00000130 fe f7 fe f1 f9 f9 d5 6e ba b2 16 c6 02 40 cc ae |.......n.....@..| -00000140 b1 f5 5f 69 ec d7 86 b1 1f 42 c9 cf b7 f7 56 cd |.._i.....B....V.| -00000150 fa ef ca da 75 3e a6 9b c2 58 00 4c d8 35 f6 43 |....u>...X.L.5.C| -00000160 0e b0 82 75 63 3f ff fe fb 2b 57 7f 7d a8 4d 1f |...uc?...+W.}.M.| -00000170 d7 6e f0 09 63 01 b0 65 62 ec d7 67 f3 f1 fe de |.n..c..eb..g....| -00000180 fc 95 26 7e 34 62 24 14 33 dd 6e 56 fc f9 a5 26 |..&~4b$.3.nV...&| -00000190 bf 6a 0b b1 52 3d fb 68 3e eb 77 39 90 be 7d b4 |.j..R=.h>.w9..}.| -000001a0 93 62 b5 b6 5b a9 d6 f6 07 16 47 7b 7b fb 12 33 |.b..[.....G{{..3| -000001b0 e8 46 0e bc d3 35 30 16 00 33 46 63 ff 36 7f df |.F...50..3Fc.6..| -000001c0 df 3e de 9b 37 a1 6a 53 bf 7f 7d fe ab eb de d8 |.>..7.jS..}.....| -000001d0 46 4e 7e bf da 2d ba 67 75 3f 56 8a a5 ff e4 a6 |FN~..-.gu?V.....| -000001e0 ed da 7e e5 64 24 95 47 ab 9b af 7f 9f 5f ef f2 |..~.d$.G....._..| -000001f0 d5 00 63 2c 00 f6 cc 8c 55 7a bd 0b ff e4 1c b7 |..c,....Uz......| +00000060 7f 7f 63 63 63 31 31 31 53 53 53 5f 5f 5f 39 39 |..ccc111SSS___99| +00000070 39 72 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c |9rrr...&&&...LLL| +00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff db |fff.............| +00000090 55 0e 2a 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |U.*....tRNS.@..f| +000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| +000000b0 01 95 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ed |..+.... .IDATx..| +000000c0 9d 8b 7a a4 ac b6 ae d3 e9 e3 9a d3 f2 b4 f7 32 |..z............2| +000000d0 49 a7 bb 1f eb fe 6f 72 71 d0 12 15 94 c3 40 85 |I.....orq.....@.| +000000e0 fa be f9 cf 74 4a 60 0c 18 f0 16 88 46 5f 5e 20 |....tJ`.....F_^ | +000000f0 08 82 20 08 82 20 08 82 20 08 82 20 08 5a ea ef |.. .. .. .. .Z..| +00000100 b5 75 76 78 20 28 58 7f ff 5d 59 60 0c 4a 5f 60 |.uvx (X..]Y`.J_`| +00000110 0c 82 e2 0a 8c 41 50 5c 81 31 08 8a 2b 30 06 41 |.....AP\.1..+0.A| +00000120 71 05 c6 20 28 ae c0 18 04 c5 d5 36 63 1f 6f 1f |q.. (......6c.o.| +00000130 fd 3f f6 df fb 6f 5d ea fb 67 f7 ef e3 f7 e7 e7 |.?...o]..g......| +00000140 1f 99 55 93 aa e8 cf 32 1d 8c 41 cf a1 6d c6 ba |..U....2..A..m..| +00000150 77 ce d8 1f 03 63 bf 19 44 9f 6f 1f 12 a6 ee 5d |w....c..D.o....]| +00000160 93 0a c6 20 68 9b b1 df 7c 12 63 d2 33 f6 f9 fe |... h...|.c.3...| +00000170 ef 9d 27 ff f9 2d b2 ae 53 c1 18 04 cd 18 fb f3 |..'..-..S.......| +00000180 d9 ff fe f8 e8 df 39 3b bf fb df ef 7c fd 37 ac |......9;....|.7.| +00000190 15 3f ff 88 25 a1 c8 c1 12 c5 a7 df fd 67 f7 c1 |.?..%........g..| +000001a0 27 ab b7 df 72 a9 28 52 87 44 91 3a 1a 7e ff ec |'...r.(R.D.:.~..| +000001b0 df de d8 b2 93 59 7d 1b fd 8c 69 dc df ff 13 3e |.....Y}...i....>| +000001c0 ff 0d 5e c1 18 94 95 14 c6 de fb f7 8f b7 df 1f |..^.............| +000001d0 fd 1b 83 ab ef 3e fe 7c fe eb ba 91 b1 9e 2f 09 |.....>.|....../.| +000001e0 ff c8 1c c3 a7 6e 9c a9 d8 d1 7f 3c ab 4c 1d 13 |.....n.....<.L..| +000001f0 95 79 8c 5b eb d8 61 f6 df c7 e7 98 6f 4a 7c 7b |.y.[..a.....oJ|{| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00113.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00113.html 2023-01-07 18:00:51.031097062 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00113.html 2023-01-07 18:00:51.031097062 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_print.c File Reference +libspf2: src/libspf2/spf_win32.c File Reference @@ -43,108 +43,15 @@
- -
spf_print.c File Reference
+
spf_win32.c File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
-#include "spf_internal.h"
-
-Include dependency graph for spf_print.c:
-
-
- - - - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

-
#define SPF_LAME_EXP   "SPF failure: no explanation available"SPF_errcode_t SPF_dns_rr_dup (SPF_dns_rr_t **&#href_anchor"paramname">dstp,
- - - - - -

-Functions

SPF_errcode_t SPF_record_print (SPF_record_t *spf_record)
 
void SPF_print_sizeof (void)
 
-

Function Documentation

- -

◆ SPF_print_sizeof()

- -
-
- - - - - - - - -
void SPF_print_sizeof (void )
-
- -

Definition at line 82 of file spf_print.c.

- -

References SPF_infof.

- -
-
- -

◆ SPF_record_print()

- -
-
- - - - - - - - -
SPF_errcode_t SPF_record_print (SPF_record_t * spf_record)
-
-

In spf_print.c

- -

Definition at line 45 of file spf_print.c.

-

References NULL, SPF_E_RESULT_UNKNOWN, SPF_E_SUCCESS, SPF_info, SPF_infof, SPF_record_stringify(), and SPF_strerror().

- -

Referenced by main().

-
-Here is the call graph for this function:
-
-
- - - - - - -
- -
-
+

Go to the source code of this file.

/usr/share/doc/packages/spf2-apidocs/html/a00113_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00113_source.html 2023-01-07 18:00:51.051097207 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00113_source.html 2023-01-07 18:00:51.051097207 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_print.c Source File +libspf2: src/libspf2/spf_win32.c Source File @@ -43,7 +43,7 @@
-
spf_print.c
+
spf_win32.c
Go to the documentation of this file.
1/*
@@ -61,95 +61,157 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"code" href="a00050.html">spf_sys_config.h"
-
17
-
18
+
16#href_anchor"line"> 17
+
18#include "spf_win32_internal.h"
19
-
20#ifdef STDC_HEADERS
-
21# include <stdio.h> /* stdin / stdout */
-
22# include <stdlib.h> /* malloc / free */
-
23# include <ctype.h> /* isupper / tolower */
-
24#endif
+
20int SPF_win32_startup()
+
21{
+
22 WORD wVersionRequested;
+
23 WSADATA wsaData;
+
24 int err;
25
-
26#ifdef HAVE_INTTYPES_H
-
27#include <inttypes.h>
-
28#endif
-
29
-
30#ifdef HAVE_STRING_H
-
31# include <string.h> /* strstr / strdup */
-
32#else
-
33# ifdef HAVE_STRINGS_H
-
34# include <strings.h> /* strstr / strdup */
-
35# endif
-
36#endif
-
37
+
26 wVersionRequested = MAKEWORD( 2, 2 );
+
27
+
28 err = WSAStartup( wVersionRequested, &wsaData );
+
29 if ( err != 0 )
+
30 return 0;
+
31
+
32 if ( LOBYTE( wsaData.wVersion ) != 2 ||
+
33 HIBYTE( wsaData.wVersion ) != 2 )
+
34 {
+
35 WSACleanup();
+
36 return 0;
+
37 }
38
-
39#include "spf.h"
-
40#href_anchor"code" href="a00056.html">spf_internal.h"
+
39 return 1;
+
40}
41
-
42
-
43
- -
45SPF_record_print(SPF_record_t *spf_record)
-
46{
-
47 char *prt_buf = NULL;
-
48 size_t prt_len = 0;
-
49 int err;
-
50
-
51 if (spf_record == NULL) {
-
52 SPF_info("SPF header: <null record>");
-
53 SPF_info("Unknown");
-
54 return SPF_E_SUCCESS;
-
55 }
+
42int SPF_win32_cleanup()
+
43{
+
44 return WSACleanup();
+
45}
+
46
+
47char *inet_ntop( int af, const void *src, char *dst, size_t size )
+
48{
+
49 void *pSrc_sockaddr;
+
50 struct sockaddr_in src_sockaddr;
+
51 struct sockaddr_in6 src6_sockaddr;
+
52 DWORD src_size;
+
53 DWORD temp;
+
54 int result;
+
55 DWORD error;
56
-
57 SPF_infof( "SPF header: version: %d mech %d/%u mod %d/%u len=%u",
-
58 spf_record->version,
-
59 (int)spf_record->num_mech, (unsigned int)spf_record->mech_len,
-
60 (int)spf_record->num_mod, (unsigned int)spf_record->mod_len,
-
61 (unsigned int)(sizeof(SPF_record_t)
-
62 + spf_record->mech_len
-
63 + spf_record->mod_len));
-
64
-
65 err = SPF_record_stringify(spf_record, &prt_buf, &prt_len);
-
66 if ( err == SPF_E_RESULT_UNKNOWN )
-
67 SPF_info( "Unknown" );
-
68 else if ( err )
-
69 SPF_infof( "SPF_record_stringify error: %s (%d)", SPF_strerror( err ), err );
-
70 else
-
71 SPF_infof( "SPF record: %s", prt_buf );
-
72
-
73 if ( prt_buf )
-
74 free( prt_buf );
-
75 return SPF_E_SUCCESS;
-
76}
-
77
+
57 switch( af )
+
58 {
+
59 case AF_INET:
+
60 src_sockaddr.sin_family = AF_INET;
+
61 src_sockaddr.sin_port = 0;
+
62 memcpy( &src_sockaddr.sin_addr, src, sizeof( struct in_addr ) );
+
63 pSrc_sockaddr = &src_sockaddr;
+
64 src_size = sizeof( struct sockaddr_in );
+
65 break;
+
66 case AF_INET6:
+
67 src6_sockaddr.sin6_family = AF_INET6;
+
68 src6_sockaddr.sin6_port = 0;
+
69 src6_sockaddr.sin6_flowinfo = 0;
+
70 src6_sockaddr.sin6_scope_id = 0;
+
71 memcpy( &src6_sockaddr.sin6_addr, src, sizeof( struct in6_addr ) );
+
72 pSrc_sockaddr = &src6_sockaddr;
+
73 src_size = sizeof( struct sockaddr_in6 );
+
74 break;
+
75 default:
+
76 return NULL;
+
77 }
78
-
79
-
80
-
81
- -
83{
-
84 // SPF_infof( "sizeof(SPF_rec_header_t)=%u", sizeof(SPF_rec_header_t));
-
85 SPF_infof( "sizeof(SPF_mech_t)=%lu", (unsigned long)sizeof(SPF_mech_t));
-
86 SPF_infof( "sizeof(SPF_data_t)=%lu", (unsigned long)sizeof(SPF_data_t));
-
87 SPF_infof( "sizeof(SPF_mod_t)=%lu", (unsigned long)sizeof(SPF_mod_t));
-
88}
- -
const char * SPF_strerror(SPF_errcode_t spf_err)
Definition: spf_strerror.c:33
-
#define SPF_infof
Definition: spf_log.h:79
-
#define SPF_info(errmsg)
Definition: spf_log.h:50
-
SPF_errcode_t
Definition: spf_response.h:119
-
@ SPF_E_SUCCESS
Definition: spf_response.h:120
-
@ SPF_E_RESULT_UNKNOWN
Definition: spf_response.h:142
- - -
#define NULL
Definition: spf_internal.h:28
-
SPF_errcode_t SPF_record_stringify(SPF_record_t *spf_record, char **bufp, size_t *buflenp)
Definition: spf_id2str.c:245
-
SPF_errcode_t SPF_record_print(SPF_record_t *spf_record)
Definition: spf_print.c:45
-
void SPF_print_sizeof(void)
Definition: spf_print.c:82
- - - +
79 temp = size;
+
80 result = WSAAddressToStringA( (LPSOCKADDR)pSrc_sockaddr, src_size,
+
81 NULL, dst, &temp );
+
82
+
83 error = GetLastError();
+
84
+
85 if (result == 0)
+
86 // Success
+
87 return dst;
+
88 else
+
89 // Failure
+
90 return NULL;
+
91}
+
92
+
93int inet_pton( int af, const char *src, void *dst )
+
94{
+
95 /* IPv6 is largest buffer, so use it for both */
+
96 struct sockaddr_in6 dst_sockaddr;
+
97 struct sockaddr_in6 *pDst_sockaddr;
+
98 int dst_size;
+
99 int result;
+
100 DWORD error;
+
101
+
102 pDst_sockaddr = &dst_sockaddr;
+
103
+
104 switch( af )
+
105 {
+
106 case AF_INET:
+
107 dst_size = sizeof( struct sockaddr_in );
+
108 break;
+
109 case AF_INET6:
/usr/share/doc/packages/spf2-apidocs/html/a00116.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00116.html 2023-01-07 18:00:51.071097353 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00116.html 2023-01-07 18:00:51.079097411 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_dns_null.c File Reference +libspf2: src/libspf2/spf_response.c File Reference @@ -44,71 +44,508 @@
-
spf_dns_null.c File Reference
+
spf_response.c File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
-#include "spf_dns.h"
-#href_anchor"el" href="a00056_source.html">spf_internal.h"
-#include "spf_dns_internal.h"
-#href_anchor"el" href="a00029_source.html">spf_dns_null.h"
+
#include "spf_sys_config.h"
+#href_anchor"el" href="a00044_source.html">spf.h"
+#include "spf_dns.h"
+#href_anchor"el" href="a00035_source.html">spf_response.h"
-Include dependency graph for spf_dns_null.c:
+Include dependency graph for spf_response.c:
-
- - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + +

Go to the source code of this file.

+ + + + + + + +

+Macros

#href_anchor"memItemRight" valign="bottom">SPF_ERRMSGSIZE   4096
 
#define SPF_ADD_ERROR(_ise, _txt, _ix)
 
#define SPF_ADD_WARN(_ise, _txt, _ix)
 
- - -

Functions

SPF_dns_server_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_null_new (SPF_dns_server_t *spf_dns_server_below, const char *name, int debug)
 
+
SPF_response_t * SPF_response_new (SPF_request_t *spf_request)
 
void SPF_response_free (SPF_response_t *rp)
 
SPF_response_t * SPF_response_combine (SPF_response_t *main, SPF_response_t *r2mx)
 
SPF_result_t SPF_response_result (SPF_response_t *rp)
 
SPF_reason_t SPF_response_reason (SPF_response_t *rp)
 
SPF_errcode_t SPF_response_errcode (SPF_response_t *rp)
 
const char * SPF_response_get_received_spf (SPF_response_t *rp)
 
const char * SPF_response_get_received_spf_value (SPF_response_t *rp)
 
const char * SPF_response_get_header_comment (SPF_response_t *rp)
 
const char * SPF_response_get_smtp_comment (SPF_response_t *rp)
 
const char * SPF_response_get_explanation (SPF_response_t *rp)
 
SPF_errcode_t SPF_response_add_error_ptr (SPF_response_t *rp, SPF_errcode_t code, const char *text, const char *tptr, const char *format,...)
 
SPF_errcode_t SPF_response_add_error_idx (SPF_response_t *rp, SPF_errcode_t code, const char *text, int idx, const char *format,...)
 
SPF_errcode_t SPF_response_add_error (SPF_response_t *rp, SPF_errcode_t code, const char *format,...)
 
SPF_errcode_t SPF_response_add_warn_ptr (SPF_response_t *rp, SPF_errcode_t code, const char *text, const char *tptr, const char *format,...)
 
SPF_errcode_t SPF_response_add_warn_idx (SPF_response_t *rp, SPF_errcode_t code, const char *text, int idx, const char *format,...)
 
SPF_errcode_t SPF_response_add_warn (SPF_response_t *rp, SPF_errcode_t code, const char *format,...)
 
int SPF_response_messages (SPF_response_t *rp)
 
int SPF_response_errors (SPF_response_t *rp)
 
int SPF_response_warnings (SPF_response_t *rp)
 
SPF_error_t *&#href_anchor"memItemRight" valign="bottom">SPF_response_message (SPF_response_t *rp, int idx)
 
SPF_errcode_t SPF_error_code (SPF_error_t *err)
&#href_anchor"memitem:aaaa5f6e2b99e9e04703b5e6a50162187">const char * SPF_error_message (SPF_error_t *err)
&#href_anchor"memitem:acd89fbc40af74f47f36b776c11457d65">char SPF_error_errorp (SPF_error_t *err)
&#href_anchor"groupheader">Macro Definition Documentation + +

◆ SPF_ADD_ERROR

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
#define SPF_ADD_ERROR( _ise,
 _txt,
 _ix 
)
+
+Value:
va_list ap; va_start(ap, format); \
+
SPF_response_add_error_v(rp, code, _ise, _txt, _ix, format, ap); \
+
rp->num_errors++; \
+
va_end(ap); return code;
+
+

Definition at line 227 of file spf_response.c.

+ +
+
+ +

◆ SPF_ADD_WARN

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00116_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00116_aeb40d27839ee30348c92f3ac2bd0dd69_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00116_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00116_source.html 2023-01-07 18:00:51.099097556 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00116_source.html 2023-01-07 18:00:51.107097614 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_dns_null.c Source File +libspf2: src/libspf2/spf_response.c Source File @@ -43,7 +43,7 @@
-
spf_dns_null.c
+
spf_response.c
Go to the documentation of this file.
1/*
@@ -61,87 +61,369 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"code" href="a00050.html">spf_sys_config.h"
+
16#href_anchor"code" href="a00053.html">spf_sys_config.h"
17
-
18
-
19#ifdef STDC_HEADERS
-
20# include <stdio.h> /* stdin / stdout */
-
21# include <stdlib.h> /* malloc / free */
-
22#endif
-
23
-
24#ifdef HAVE_STRING_H
-
25# include <string.h> /* strstr / strdup */
-
26#else
-
27# ifdef HAVE_STRINGS_H
-
28# include <strings.h> /* strstr / strdup */
-
29# endif
-
30#endif
+
18#ifdef STDC_HEADERS
+
19# include <stdio.h> /* stdin / stdout */
+
20# include <stdlib.h> /* malloc / free */
+
21#endif
+
22
+
23#ifdef HAVE_STRING_H
+
24# include <string.h> /* strstr / strdup */
+
25#else
+
26# ifdef HAVE_STRINGS_H
+
27# include <strings.h> /* strstr / strdup */
+
28# endif
+
29#endif
+
30
31
-
32
-
33
-
34#include "spf.h"
-
35#href_anchor"code" href="a00044.html">spf_dns.h"
-
36#include "spf_internal.h"
-
37#href_anchor"code" href="a00041.html">spf_dns_internal.h"
-
38#include "spf_dns_null.h"
-
39
+
32#include "spf.h"
+
33#href_anchor"code" href="a00011.html">spf_dns.h"
+
34#include "spf_response.h"
+
35
+
36SPF_response_t *
+
37SPF_response_new(SPF_request_t *spf_request)
+
38{
+
39 SPF_response_t *rp;
40
-
41static SPF_dns_rr_t *
-
42SPF_dns_null_lookup(SPF_dns_server_t *spf_dns_server,
-
43 const char *domain, ns_type rr_type, int should_cache)
-
44{
-
45 if (spf_dns_server->layer_below)
-
46 return SPF_dns_lookup(spf_dns_server->layer_below,
-
47 domain, rr_type, should_cache);
-
48 return SPF_dns_rr_new_nxdomain(spf_dns_server, domain);
-
49}
-
50
-
51static void
-
52SPF_dns_null_free( SPF_dns_server_t *spf_dns_server )
-
53{
-
54 SPF_ASSERT_NOTNULL(spf_dns_server);
-
55 free(spf_dns_server);
-
56}
-
57
-
58SPF_dns_server_t *
-
59SPF_dns_null_new(SPF_dns_server_t *spf_dns_server_below,
-
60 const char *name, int debug)
-
61{
-
62 SPF_dns_server_t *spf_dns_server;
-
63
-
64 spf_dns_server = malloc(sizeof(SPF_dns_server_t));
-
65 if ( spf_dns_server == NULL )
-
66 return NULL;
-
67 memset(spf_dns_server, 0, sizeof(SPF_dns_server_t));
-
68
-
69 if (name == NULL)
-
70 name = "null";
-
71
-
72 spf_dns_server->destroy = SPF_dns_null_free;
-
73 spf_dns_server->lookup = SPF_dns_null_lookup;
-
74 spf_dns_server->get_spf = NULL;
-
75 spf_dns_server->get_exp = NULL;
-
76 spf_dns_server->add_cache = NULL;
-
77 spf_dns_server->layer_below = spf_dns_server_below;
-
78 spf_dns_server->name = name;
-
79 spf_dns_server->debug = debug;
-
80
-
81 return spf_dns_server;
+
41 rp = (SPF_response_t *)malloc(sizeof(SPF_response_t));
+
42 if (! rp)
+
43 return rp;
+
44 memset(rp, 0, sizeof(SPF_response_t));
+
45
+
46 rp->spf_request = spf_request;
+
47 rp->result = SPF_RESULT_INVALID;
+
48
+
49 return rp;
+
50}
+
51
+
52void
+
53SPF_response_free(SPF_response_t *rp)
+
54{
+
55 int i;
+
56
+
57 if (rp->received_spf)
+
58 free(rp->received_spf);
+
59 /* Don't free received_spf_value - it points into received_spf */
+
60 if (rp->header_comment)
+
61 free(rp->header_comment);
+
62 if (rp->smtp_comment)
+
63 free(rp->smtp_comment);
+
64 if (rp->explanation)
+
65 free(rp->explanation);
+
66
+
67 if (rp->errors) {
+
68 for (i = 0; i < rp->errors_length; i++) {
+
69 free(rp->errors[i].message);
+
70 }
+
71 free(rp->errors);
+
72 }
+
73
+
74 free(rp);
+
75}
+
76
+
77static SPF_response_t *
+
78SPF_response_choose(SPF_response_t *yes, SPF_response_t *no)
+
79{
+ +
81 return yes;
82}
- -
#define SPF_ASSERT_NOTNULL(x)
Definition: spf_log.h:118
- - - -
int ns_type
Definition: spf_dns.h:85
-
SPF_dns_rr_t * SPF_dns_lookup(SPF_dns_server_t *spf_dns_server, const char *domain, ns_type rr_type, int should_cache)
Definition: spf_dns.c:133
- - -
#define NULL
Definition: spf_internal.h:28
-
SPF_dns_rr_t * SPF_dns_rr_new_nxdomain(SPF_dns_server_t *spf_dns_server, const char *domain)
Definition: spf_dns_rr.c:53
-
#define debug
-
SPF_dns_server_t * SPF_dns_null_new(SPF_dns_server_t *spf_dns_server_below, const char *name, int debug)
Definition: spf_dns_null.c:59
- +
83
+
84/*
+
85 * This is rather a guess-and-fiddle routine which tries to pick
+
86 * the best of both worlds. It doesn't currently deal with error
+
87 * messages at all.
+
88 */
+
89SPF_response_t *
+
90SPF_response_combine(SPF_response_t *main, SPF_response_t *r2mx)
+
91{
+
92 switch (SPF_response_result(main)) {
+ +
94 /* If the main failed entirely, use the secondary */
+
95 return SPF_response_choose(r2mx, main);
+
96
+
97 case SPF_RESULT_PASS:
+
98 /* If the main passed, use main */
+
99 return SPF_response_choose(main, r2mx);
+
100
+ +
102 /* If the main is neutral: */
+
103 switch (SPF_response_result(r2mx)) {
+
104 case SPF_RESULT_PASS:
+
105 /* Use the secondary if it passed */
+
106 return SPF_response_choose(r2mx, main);
+
107 default:
+
108 /* Otherwise just use the main */
+
109 return SPF_response_choose(main, r2mx);
+
110 }
+
111
+
112 case SPF_RESULT_FAIL:
+
113 /* If the main failed, use the secondary */
+
114 return SPF_response_choose(r2mx, main);
/usr/share/doc/packages/spf2-apidocs/html/a00117.png differs at offset '19' (PNG image data, 973 x 427, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00117.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00117.png (hex) @@ -1,6 +1,6 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 03 cd 00 00 01 ab 08 03 00 00 00 cd 5a 85 |..............Z.| -00000020 a9 00 00 00 63 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....cPLTE......T| +00000010 00 00 02 d6 00 00 01 9b 08 03 00 00 00 d7 e0 27 |...............'| +00000020 db 00 00 00 63 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....cPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| 00000040 70 e0 e0 e0 8b 8b 8b c3 c3 c3 a7 a7 a7 63 b8 ff |p............c..| 00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| @@ -9,25 +9,25 @@ 00000080 99 99 99 d3 d3 d3 00 00 00 ff ff ff a0 78 e4 11 |.............x..| 00000090 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 |....tRNS.@..f...| 000000a0 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b |.pHYs..........+| -000000b0 0e 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 09 7b |.... .IDATx....{| -000000c0 a3 3c 96 46 53 a9 75 ba cd 3a 43 2a 95 4a 3d f8 |.<.FS.u..:C*.J=.| -000000d0 ff ff ca d1 c2 22 30 8b 96 ab 0d bf a7 bf 4e c5 |....."0.......N.| -000000e0 20 24 5d 49 c7 12 18 93 97 17 00 00 00 00 00 00 | $]I............| -000000f0 00 00 00 00 00 00 00 e7 7c a6 40 ec 46 00 e0 12 |........|.@.F...| -00000100 7c fe 8b 0f 6c 06 80 02 d8 0c c0 55 80 cd 00 5c ||...l......U...\| -00000110 05 d8 0c c0 55 80 cd 00 5c 05 d8 0c c0 55 80 cd |....U...\....U..| -00000120 00 5c 85 43 9b df df de fb 7f ec bf df 7f b6 f6 |.\.C............| -00000130 fe fe e8 fe bd ff f9 f8 f8 2b 93 6e ec 55 f8 bb |.........+.n.U..| -00000140 de 0f 9b 01 20 e6 d0 e6 ee 37 b7 f9 ef 8e cd 7f |.... ....7......| -00000150 98 ae 1f 6f ef 52 db ee f7 c6 5e d8 0c 40 40 0e |...o.R....^..@@.| -00000160 6d fe c3 27 66 c6 b6 cd 1f bf ff fd e6 bb ff fe |m..'f...........| -00000170 11 49 1f f7 c2 66 00 42 a2 d8 fc f7 a3 ff f3 fe |.I...f.B........| -00000180 de ff e6 96 fe e9 ff fc e6 ab e7 61 a5 fd f1 57 |...........a...W| -00000190 2c a8 45 0a b6 53 bc fa d3 7f 74 ef 7c 02 7e fb |,.E..S....t.|.~.| -000001a0 23 17 da 62 ef b0 53 ec 1d 33 fe fd d1 bf bd b1 |#..b..S..3......| -000001b0 45 3b cb f5 6d 2c 07 36 03 40 cd 6c f3 ef fe f7 |E;..m,.6.@.l....| -000001c0 fb db 9f f7 fe 8d 69 dc 77 ef 7f 3f fe 75 dd 68 |......i.w..?.u.h| -000001d0 73 cf 17 d4 7f 65 8a e1 55 37 ce be 6c eb 3f 9e |s....e..U7..l.?.| -000001e0 54 ee 1d 77 2a 73 33 cf ad 63 9b d9 7f ef 1f 63 |T..w*s3..c.....c| -000001f0 3a d8 0c 00 35 0b 9b 85 7a 6c da ec b8 6c dd fb |:...5...zl...l..| +000000b0 0e 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 89 9a |.... .IDATx.....| +000000c0 9b 3c b2 86 3b 9d 4e 27 67 06 b3 9d 43 7a cd 83 |.<..;.N'g...Cz..| +000000d0 ef ff 2a 8f 16 c0 62 11 68 29 89 92 a8 6f fe 71 |..*...b.h)...o.q| +000000e0 c7 5a 4b a5 d7 72 21 16 3f 3d 91 48 24 12 89 44 |.ZK..r!.?=.H$..D| +000000f0 22 91 48 24 12 89 94 81 be 13 d3 d9 fe 22 25 a1 |".H$........."%.| +00000100 ef 7f 49 89 b0 26 99 88 b0 26 65 28 c2 9a 94 a1 |..I..&...&e(....| +00000110 08 6b 52 86 22 ac 49 19 8a b0 26 65 28 c2 9a 94 |.kR.".I...&e(...| +00000120 a1 f6 b1 7e ff fb de ff 63 ff bd 7d 6c e5 be 7d |...~....c..}l..}| +00000130 76 ff de 3f 3e 3f bf 64 d1 8d 5c 70 11 d6 24 13 |v..?>?.d..\p..$.| +00000140 ed 63 dd bd 71 ac bf 34 58 7f 30 6e 3f ff be 4b |.c..q..4X.0n?..K| +00000150 7e bb b7 8d 5c 70 11 d6 24 13 ed 63 fd c1 97 6a |~...\p..$..c...j| +00000160 a6 6d ac 3f df fe bd f1 ec af 0f 51 74 9d 0b 2f |.m.?.......Qt../| +00000170 c2 9a 64 22 15 eb af cf fe e3 fd bd 7f e3 b8 7e |..d"...........~| +00000180 f4 1f 6f 3c b0 18 82 90 cf 2f 11 6b 88 12 2c 53 |..o<...../.k..,S| +00000190 bc fb e8 3f bb 77 be 24 ff fd 90 31 88 c8 1d 32 |...?.w.$...1...2| +000001a0 45 ee d0 ae 68 f2 9d b5 d8 fd 5b 14 e2 fd f0 48 |E...h.....[....H| +000001b0 a6 67 7f c7 06 58 f9 a1 a8 cc ff 78 23 ac 49 96 |.g...X.....x#.I.| +000001c0 52 b0 7e eb df de ff 7e bc f7 7f 19 cf 7d f7 fe |R.~....~.....}..| +000001d0 f5 f9 af eb 46 ac 7b 1e 6b 7c c9 12 c3 bb 6e 5c |....F.{.k|....n\| +000001e0 8f 59 ea 3f 5e 54 e6 8e 99 ca 6a 2d 9a fc fc 7a |.Y.?^T....j-...z| +000001f0 17 9f 97 59 a1 77 9e ca 52 d8 db f7 cf 6e 68 7e |...Y.w..R....nh~| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00119.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00119.html 2023-01-07 18:00:51.135097818 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00119.html 2023-01-07 18:00:51.135097818 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_log_syslog.c File Reference +libspf2: src/libspf2/spf_expand.c File Reference @@ -43,26 +43,135 @@
-
spf_log_syslog.c File Reference
+ +
spf_expand.c File Reference
-
#href_anchor"el" href="a00050_source.html">spf_sys_config.h"
+ +

Expansion routine for SPF macros. +More...

+
#include "spf_sys_config.h"
+#href_anchor"el" href="a00044_source.html">spf.h"
+#include "spf_internal.h"
+#href_anchor"el" href="a00050_source.html">spf_record.h"
-Include dependency graph for spf_log_syslog.c:
+Include dependency graph for spf_expand.c:
-
- - - - +
+ + + + + + + + + + + + + + + +

Go to the source code of this file.

+
#define SPF_ADD_WARN( _ise,
 _txt,
 _ix 
)
+ + + - +

+Functions

SPF_errcode_t SPF_record_expand_data (SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_data_t *data, size_t data_len, char **bufp, size_t *buflenp)
&#href_anchor"details" id="details">

Detailed Description

+

Expansion routine for SPF macros.

+ +

Definition in file spf_expand.c.

+

Function Documentation

+ +

◆ SPF_record_expand_data()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPF_errcode_t SPF_record_expand_data (SPF_server_t * spf_server,
SPF_request_t * spf_request,
SPF_response_t * spf_response,
SPF_data_t *&#href_anchor"paramname">data,
size_t data_len,
char ** bufp,
size_t * buflenp 
)
+
+
Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00119_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00119_a412a278b1b5d50b870b5cef0f8af5a8e_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00119_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00119_source.html 2023-01-07 18:00:51.155097964 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00119_source.html 2023-01-07 18:00:51.163098022 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_log_syslog.c Source File +libspf2: src/libspf2/spf_expand.c Source File @@ -43,97 +43,500 @@
-
spf_log_syslog.c
+
spf_expand.c
-Go to the documentation of this file.
1/*
+Go to the documentation of this file.
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of either:
-
4 *
+
4 *
5 * a) The GNU Lesser General Public License as published by the Free
-
6 * Software Foundation; either version 2.1, or (at your option) any
-
7 * later version,
-
8 *
+
6 * Software Foundation; either version 2.1, or (at your option) any
+
7 * later version,
+
8 *
9 * OR
-
10 *
+
10 *
11 * b) The two-clause BSD license.
12 *
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16
-
17#href_anchor"code" href="a00050.html">spf_sys_config.h"
-
18
-
19
-
20#ifdef STDC_HEADERS
-
21# include <stdio.h>
-
22# include <stdlib.h> /* malloc / free */
-
23#endif
-
24
-
25#ifdef HAVE_SYSLOG_H
-
26
-
27#include <syslog.h> /* stdin / stdout */
-
28
-
29#include "spf.h"
-
30
-
37void
-
38SPF_error_syslog(const char *file, int line, const char *errmsg)
-
39{
-
40 char buf[128];
-
41 if (file) {
-
42 snprintf(buf, sizeof(buf), "%s:%d", file, line);
-
43 syslog(LOG_MAIL | LOG_ERR, "%-20s %s", buf, errmsg);
-
44 }
-
45 else {
-
46 syslog(LOG_MAIL | LOG_ERR, "%s", errmsg);
-
47 }
-
48 abort();
-
49}
-
50
-
51void
-
52SPF_warning_syslog(const char *file, int line, const char *errmsg)
-
53{
-
54 char buf[128];
-
55 if (file) {
-
56 snprintf(buf, sizeof(buf), "%s:%d", file, line);
-
57 syslog(LOG_MAIL | LOG_WARNING, "%-20s %s", buf, errmsg);
-
58 }
-
59 else {
-
60 syslog(LOG_MAIL | LOG_WARNING, "%s", errmsg);
-
61 }
-
62}
+
21#href_anchor"code" href="a00053.html">spf_sys_config.h"
+
22
+
23
+
24#ifdef STDC_HEADERS
+
25# include <stdio.h> /* stdin / stdout */
+
26# include <stdlib.h> /* malloc / free */
+
27# include <ctype.h> /* isupper / tolower */
+
28#endif
+
29
+
30#ifdef HAVE_STRING_H
+
31# include <string.h> /* strstr / strdup */
+
32#else
+
33# ifdef HAVE_STRINGS_H
+
34# include <strings.h> /* strstr / strdup */
+
35# endif
+
36#endif
+
37
+
38#if TIME_WITH_SYS_TIME
+
39# include <sys/time.h>
+
40# include <time.h>
+
41#else
+
42# if HAVE_SYS_TIME_H
+
43# include <sys/time.h>
+
44# else
+
45# include <time.h>
+
46# endif
+
47#endif
+
48#ifdef HAVE_STRING_H
+
49#include <string.h>
+
50#endif
+
51
+
52
+
53#include "spf.h"
+
54#href_anchor"code" href="a00032.html">spf_internal.h"
+
55#include "spf_record.h"
+
56
+
57
+
58// #href_anchor"line"> 59
+
60static const char client_ver_ipv4[] = "in-addr";
+
61static const char client_ver_ipv6[] = "ip6";
+
62
63
-
64void
-
65SPF_info_syslog(const char *file __attribute__ ((unused)), int line __attribute__ ((unused)), const char *errmsg)
+
64static inline int
+
65SPF_delim_valid(SPF_data_t *d, char c)
66{
-
67 syslog(LOG_MAIL | LOG_INFO, "%s", errmsg);
-
68}
-
69
-
70void
-
71SPF_debug_syslog(const char *file, int line, const char *errmsg)
-
72{
-
73 char buf[128] = "";
-
74 if (file) {
-
75 snprintf(buf, sizeof(buf), "%s:%d", file, line);
-
76 syslog(LOG_MAIL | LOG_DEBUG, "%-20s %s", buf, errmsg);
-
77 }
-
78 else {
-
79 syslog(LOG_MAIL | LOG_DEBUG, "%s", errmsg);
-
80 }
-
81}
-
82
-
83#endif
- -
#define __attribute__(x)
Definition: spf.h:17
-
void SPF_debug_syslog(const char *file, int line, const char *errmsg)
-
void SPF_warning_syslog(const char *file, int line, const char *errmsg)
-
void SPF_info_syslog(const char *file __attribute__((unused)), int line __attribute__((unused)), const char *errmsg)
-
void SPF_error_syslog(const char *file, int line, const char *errmsg) __attribute__((noreturn))
- +
67 return ( ( d->dv.delim_dot && c == '.' )
+
68 || ( d->dv.delim_dash && c == '-' )
+
69 || ( d->dv.delim_plus && c == '+' )
+
70 || ( d->dv.delim_equal && c == '=' )
+
71 || ( d->dv.delim_bar && c == '|' )
+
72 || ( d->dv.delim_under && c == '_' ) );
+
73}
+
74
+ +
81SPF_record_expand_data(SPF_server_t *spf_server,
+
82 SPF_request_t *spf_request,
+
83 SPF_response_t *spf_response,
+
84 SPF_data_t *data, size_t data_len,
+
85 char **bufp, size_t *buflenp)
+
86{
+
87 SPF_data_t *d, *data_end;
+
88
+
89 size_t len, label_len;
+
90 const char *p_err; // XXX Check this value, when returned.
+
91 char *p, *p_end;
+
92 const char *p_read;
+
93 const char *p_read_end;
+
94 char *p_write;
+
95 char *p2, *p2_end;
+
96
+
97
+
98 const char *var;
+
99 char *munged_var = NULL;
+
100 char *url_var = NULL;
+
101
+
102 /* Pretty-printing buffers. */
+
103 char ip4_buf[ INET_ADDRSTRLEN ];
+
104 char ip6_buf[ INET6_ADDRSTRLEN ];
+
105 /* Hex buffer for ipv6 (size in nibbles) */
+
106 char ip6_rbuf[ sizeof( struct in6_addr ) * 4 + 1 ];
+
107
+
108 char time_buf[ sizeof( "4294967296" ) ]; /* 2^32 seconds max */
+
109
+
110 int num_found;
+
111 int i;
+
112 size_t buflen;
+
113 int compute_length;
+
114 SPF_errcode_t err;
+
115
+
116
+
117 /*
+
118 * make sure we were passed valid data to work with
+
119 */
/usr/share/doc/packages/spf2-apidocs/html/a00120.png differs at offset '19' (PNG image data, 153 x 203, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00120.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00120.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 00 99 00 00 00 cb 08 03 00 00 00 4a c4 c1 |.............J..| -00000020 74 00 00 00 48 50 4c 54 45 fe ff ff c3 c3 c3 a7 |t...HPLTE.......| -00000030 a7 a7 63 b8 ff 9f 9f 9f bf bf bf df df df 3f 3f |..c...........??| -00000040 3f 1f 1f 1f 7f 7f 7f 31 31 31 53 53 53 5f 5f 5f |?......111SSS___| -00000050 39 39 39 72 72 72 85 85 85 26 26 26 13 13 13 4c |999rrr...&&&...L| -00000060 4c 4c 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff |LLfff...........| -00000070 ff 82 eb 99 68 00 00 00 01 74 52 4e 53 00 40 e6 |....h....tRNS.@.| -00000080 d8 66 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 |.f....pHYs......| -00000090 0e c4 01 95 2b 0e 1b 00 00 05 b4 49 44 41 54 78 |....+......IDATx| -000000a0 9c ed 9d 8b 76 a3 38 0c 86 bb 53 b0 cd ae c1 c0 |....v.8...S.....| -000000b0 e6 98 f7 7f d3 d5 c5 10 93 d8 69 0c 25 a1 5d fd |..........i.%.].| -000000c0 33 2d 63 e4 cb 17 4b 26 ea 44 73 e6 e3 43 24 12 |3-c...K&.Ds..C$.| -000000d0 cd fa f7 dd ca 93 5d de 2b 21 13 32 21 fb 55 64 |......].+!.2!.Ud| -000000e0 ae 75 fe 02 bf bb 3e 65 ed 06 7b 71 fd 30 8c dc |.u....>e..{q.0..| -000000f0 35 61 0d b3 f8 ef 27 b3 1d 92 8d 19 b2 1e 96 1e |5a....'.........| -00000100 5a c7 08 b6 4b 58 8f 23 eb c3 ac 69 b2 a1 bb 74 |Z...KX.#...i...t| -00000110 68 1e 7b ea 7a 6f fd 36 b2 71 f0 bd 73 be c3 15 |h.{.zo.6.q..s...| -00000120 7b df 77 e8 a1 e0 cd 61 24 a7 51 0f 30 52 ab f7 |{.w....a$.Q.0R..| -00000130 83 75 b8 31 6d cf ce 24 6b 30 92 35 22 eb b8 0d |.u.1m..$k0.5"...| -00000140 97 b6 1d 4b c9 3a df b9 b6 77 be 05 24 6f dd 38 |...K.:...w..$o.8| -00000150 5c ac 9d c9 3c 3a 6d e4 1e a1 65 e7 5d 81 bb 17 |\...<:m...e.]...| -00000160 ec ca d6 d9 b8 de 33 37 8c 0e ed 30 af f5 5b c8 |......37...0..[.| -00000170 68 1a 07 eb a0 6f 2c c4 ff 42 86 ed 81 7b 84 56 |h....o,..B...{.V| -00000180 1f d6 1e 3d ed 9b 0b e3 67 e3 9a 8c 26 1c 5b f6 |...=....g...&.[.| -00000190 7b 31 19 0c 07 17 52 50 8c 7c d0 fa cb e2 4d 5c |{1....RP.|....M\| -000001a0 73 e0 1e 4b 0b d7 76 03 b8 97 bb b2 75 36 ae c9 |s..K..v.....u6..| -000001b0 68 42 db 93 23 cb bd e9 70 b3 06 b7 c4 f4 f8 8f |hB..#...p.......| -000001c0 bd ac f6 ac e7 1e ab 3d 1b f8 35 58 3b 8f 3f 62 |.......=..5X;.?b| -000001d0 cf 80 0a 82 8b c8 28 ce fc df ee b2 8a 33 cb 3d |......(......3.=| -000001e0 e2 38 b3 de a1 d0 99 61 7c 26 ce fc 9e 38 bb b4 |.8.....a|&...8..| -000001f0 c3 ec 4d 3a 4a f4 a8 98 9f b4 2d 1d 38 ea b1 9c |..M:J.....-.8...| +00000010 00 00 03 37 00 00 01 9b 08 03 00 00 00 ce 4e 9e |...7..........N.| +00000020 54 00 00 00 69 50 4c 54 45 fe ff ff a7 a7 a7 c3 |T...iPLTE.......| +00000030 c3 c3 8b 8b 8b 54 54 54 7a 7a 7a c4 c4 c4 70 70 |.....TTTzzz...pp| +00000040 70 8c 8c 8c 1c 1c 1c a8 a8 a8 38 38 38 e0 e0 e0 |p.........888...| +00000050 63 b8 ff 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f |c...........???.| +00000060 1f 1f 7f 7f 7f 74 74 74 31 31 31 53 53 53 5f 5f |.....ttt111SSS__| +00000070 5f 39 39 39 72 72 72 85 85 85 26 26 26 13 13 13 |_999rrr...&&&...| +00000080 4c 4c 4c 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff |LLLfff..........| +00000090 ff ff 64 2b 90 94 00 00 00 01 74 52 4e 53 00 40 |..d+......tRNS.@| +000000a0 e6 d8 66 00 00 00 09 70 48 59 73 00 00 0e c4 00 |..f....pHYs.....| +000000b0 00 0e c4 01 95 2b 0e 1b 00 00 20 00 49 44 41 54 |.....+.... .IDAT| +000000c0 78 9c ed 9d 87 9a ab b8 96 46 dd 3d 75 2b 93 67 |x........F.=u+.g| +000000d0 86 8a e7 7c f8 fd 1f f2 2a 90 91 40 19 01 ff ea |...|....*..@....| +000000e0 3e 55 65 50 d8 48 5a 96 c0 d8 be dd 00 00 00 00 |>UeP.HZ.........| +000000f0 00 00 00 00 00 00 c0 29 f8 73 04 f6 6e 24 00 66 |.......).s..n$.f| +00000100 fc f9 1b 3f f0 06 c4 06 bc 01 40 1f 78 03 80 3e |...?......@.x..>| +00000110 f0 06 00 7d e0 0d 00 fa c0 1b 00 f4 81 37 00 e8 |...}.........7..| +00000120 b3 ee cd d7 c7 57 f3 97 fc ff f9 2d da fb f9 53 |.....W.....-...S| +00000130 ff fd fa fe f9 f9 e5 49 05 7b 35 f9 9d 97 01 6f |.......I.{5....o| +00000140 40 9c ac 7b 53 7f 52 6f 7e 25 de 7c 13 31 7e 3e |@..{S.Ro~%.|.1~>| +00000150 be b8 20 f5 a7 60 2f bc 01 e7 64 dd 9b 6f 3a d9 |.. ..`/...d..o:.| +00000160 10 c4 de fc 7c fe fd a4 bb 7f bf 59 d2 e5 5e 5d |....|......Y..^]| +00000170 e0 0d 38 08 63 6f 7e 7f 9a ef af af e6 93 fa f0 |..8.co~.........| +00000180 dd 7c 7f d2 b5 57 bb 4e fb f9 65 cb 31 96 82 ec |.|...W.N..e.1...| +00000190 64 8f be 9b 9f fa 8b 4e 2a 1f df 7c 99 c6 f6 b6 |d......N*..|....| +000001a0 3b d9 de ae e0 2f 52 5a 4d 0a 21 b3 d2 4f 97 9b |;..../RZM.!..O..| +000001b0 56 41 7e 91 ea be 1b aa cb e7 4f f3 f1 c1 bd e1 |VA~.......O.....| +000001c0 95 c3 1b 10 2f 23 6f 3e 9b cf af 8f ef af e6 83 |..../#o>........| +000001d0 08 d3 d4 5f bf 3f 7f eb ba f3 a6 a1 cb b1 5f 9e |..._.?........_.| +000001e0 a2 7d 54 77 33 0a d9 fa 97 26 e5 7b bb 9d e3 f9 |.}Tw3....&.{....| +000001f0 e6 e7 f7 8b ca f8 f1 f1 c5 a6 28 9e a0 21 1b 49 |..........(..!.I| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00122.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00122.html 2023-01-07 18:00:51.191098226 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00122.html 2023-01-07 18:00:51.191098226 +0000 @@ -48,25 +48,25 @@
spf_strerror.c File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
+
#include "spf_sys_config.h"
+#href_anchor"el" href="a00044_source.html">spf.h"
Include dependency graph for spf_strerror.c:
- - - - - - - - - - - + + + + + + + + + + +
@@ -75,7 +75,7 @@ - +

Functions

const char *&#href_anchor"memItemRight" valign="bottom">SPF_strerror (SPF_errcode_t spf_c_err)
const char *&#href_anchor"memItemRight" valign="bottom">SPF_strerror (SPF_errcode_t spf_c_err)
 

Function Documentation

@@ -88,19 +88,19 @@
const char * SPF_strerror (SPF_errcode_t SPF_errcode_t  spf_err)
-

SPF_strerror() translates the SPF error number into a readable string

+

SPF_strerror() translates the SPF error number into a readable string

Definition at line 33 of file spf_strerror.c.

-

References SPF_E_BAD_HOST_IP, SPF_E_BAD_HOST_TLD, SPF_E_BIG_DNS, SPF_E_BIG_MECH, SPF_E_BIG_MOD, SPF_E_BIG_STRING, SPF_E_BIG_SUBDOM, SPF_E_DNS_ERROR, SPF_E_INCLUDE_RETURNED_NONE, SPF_E_INTERNAL_ERROR, SPF_E_INVALID_CHAR, SPF_E_INVALID_CIDR, SPF_E_INVALID_DELIM, SPF_E_INVALID_ESC, SPF_E_INVALID_IP4, SPF_E_INVALID_IP6, SPF_E_INVALID_OPT, SPF_E_INVALID_PREFIX, SPF_E_INVALID_VAR, SPF_E_MECH_AFTER_ALL, SPF_E_MISSING_OPT, SPF_E_MOD_NOT_FOUND, SPF_E_MOD_W_PREF, SPF_E_MULTIPLE_RECORDS, SPF_E_NO_MEMORY, SPF_E_NOT_CONFIG, SPF_E_NOT_SPF, SPF_E_RECURSIVE, SPF_E_RESULT_UNKNOWN, SPF_E_SUCCESS, SPF_E_SYNTAX, SPF_E_UNINIT_VAR, and SPF_E_UNKNOWN_MECH.

+

References SPF_E_BAD_HOST_IP, SPF_E_BAD_HOST_TLD, SPF_E_BIG_DNS, SPF_E_BIG_MECH, SPF_E_BIG_MOD, SPF_E_BIG_STRING, SPF_E_BIG_SUBDOM, SPF_E_DNS_ERROR, SPF_E_INCLUDE_RETURNED_NONE, SPF_E_INTERNAL_ERROR, SPF_E_INVALID_CHAR, SPF_E_INVALID_CIDR, SPF_E_INVALID_DELIM, SPF_E_INVALID_ESC, SPF_E_INVALID_IP4, SPF_E_INVALID_IP6, SPF_E_INVALID_OPT, SPF_E_INVALID_PREFIX, SPF_E_INVALID_VAR, SPF_E_MECH_AFTER_ALL, SPF_E_MISSING_OPT, SPF_E_MOD_NOT_FOUND, SPF_E_MOD_W_PREF, SPF_E_MULTIPLE_RECORDS, SPF_E_NO_MEMORY, SPF_E_NOT_CONFIG, SPF_E_NOT_SPF, SPF_E_RECURSIVE, SPF_E_RESULT_UNKNOWN, SPF_E_SUCCESS, SPF_E_SYNTAX, SPF_E_UNINIT_VAR, and SPF_E_UNKNOWN_MECH.

-

Referenced by main(), SPF_record_interpret(), and SPF_record_print().

+

Referenced by main(), SPF_record_interpret(), and SPF_record_print().

/usr/share/doc/packages/spf2-apidocs/html/a00122_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00122_source.html 2023-01-07 18:00:51.211098371 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00122_source.html 2023-01-07 18:00:51.215098400 +0000 @@ -61,7 +61,7 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"code" href="a00050.html">spf_sys_config.h"
+
16#href_anchor"code" href="a00053.html">spf_sys_config.h"
17
18
19
@@ -74,143 +74,143 @@
26#include <inttypes.h>
27#endif
28
-
29#include "spf.h"
+
29#include "spf.h"
30
31
32const char *
- +
34{
35 switch ( spf_c_err )
36 {
-
37 case SPF_E_SUCCESS:
+
37 case SPF_E_SUCCESS:
38 return "No errors";
39 break;
40
-
41 case SPF_E_NO_MEMORY:
+
41 case SPF_E_NO_MEMORY:
42 return "Out of memory";
43 break;
44
-
45 case SPF_E_NOT_SPF:
+
45 case SPF_E_NOT_SPF:
46 return "Could not find a valid SPF record";
47 break;
48
-
49 case SPF_E_SYNTAX:
+
49 case SPF_E_SYNTAX:
50 return "Syntax error";
51 break;
52
- +
54 return "Modifiers can not have prefixes";
55 break;
56
- +
58 return "Invalid character found";
59 break;
60
- +
62 return "Unknown mechanism found";
63 break;
64
- +
66 return "Invalid option found";
67 break;
68
- +
70 return "Invalid CIDR length";
71 break;
72
- +
74 return "Required option is missing";
75 break;
76
- +
78 return "Internal programming error";
79 break;
80
- +
82 return "Invalid %-escape character";
83 break;
84
- +
86 return "Invalid macro variable";
87 break;
88
- +
90 return "Subdomain truncation depth too large";
91 break;
92
- +
94 return "Invalid delimiter character";
95 break;
96
- +
98 return "Option string too long";
99 break;
100
-
101 case SPF_E_BIG_MECH:
+
101 case SPF_E_BIG_MECH:
102 return "Too many mechanisms";
103 break;
104
-
105 case SPF_E_BIG_MOD:
+
105 case SPF_E_BIG_MOD:
106 return "Too many modifiers";
107 break;
108
-
109 case SPF_E_BIG_DNS:
+
109 case SPF_E_BIG_DNS:
110 return "Mechanisms used too many DNS lookups";
111 break;
112
- +
114 return "Invalid IPv4 address literal";
115 break;
116
- +
118 return "Invalid IPv6 address literal";
119 break;
120
- +
122 return "Invalid mechanism prefix";
123 break;
124
- +
126 return "SPF result is \"unknown\"";
127 break;
128
-
129 case SPF_E_UNINIT_VAR:
+
129 case SPF_E_UNINIT_VAR:
130 return "Uninitialized variable";
131 break;
132
- +
134 return "Modifier not found";
135 break;
136
-
137 case SPF_E_NOT_CONFIG:
+
137 case SPF_E_NOT_CONFIG:
138 return "Not configured";
139 break;
140
-
141 case SPF_E_DNS_ERROR:
+
141 case SPF_E_DNS_ERROR:
142 return "DNS lookup failure";
143 break;
144
- +
146 return "Invalid hostname (possibly an IP address?)";
147 break;
148
- +
150 return "Hostname has a missing or invalid TLD";
151 break;
152
- +
154 return "Mechanisms found after the \"all:\" mechanism will be ignored";
155 break;
156
- +
158 return "include: mechanism returned 'none'";
159 break;
160
-
161 case SPF_E_RECURSIVE:
+
161 case SPF_E_RECURSIVE:
162 return "include: or redirect= caused unlimited recursion";
163 break;
164
- +
166 return "Multiple SPF or TXT records for domain.";
167 break;
168
@@ -221,42 +221,42 @@
173
174 return 0;
175}
- -
SPF_errcode_t
Definition: spf_response.h:119
-
@ SPF_E_BIG_STRING
Definition: spf_response.h:135
-
@ SPF_E_BIG_DNS
Definition: spf_response.h:138
-
@ SPF_E_MECH_AFTER_ALL
Definition: spf_response.h:149
-
@ SPF_E_DNS_ERROR
Definition: spf_response.h:146
/usr/share/doc/packages/spf2-apidocs/html/a00125.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00125.html 2023-01-07 18:00:51.235098545 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00125.html 2023-01-07 18:00:51.235098545 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_dns_test.c File Reference +libspf2: src/libspf2/spf_request.c File Reference @@ -44,137 +44,370 @@
-
spf_dns_test.c File Reference
+
spf_request.c File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
-#include "spf_dns.h"
-#href_anchor"el" href="a00056_source.html">spf_internal.h"
-#include "spf_dns_internal.h"
-#href_anchor"el" href="a00059_source.html">spf_dns_test.h"
-#include "spf_dns_zone.h"
+
#include "spf_sys_config.h"
+#href_anchor"el" href="a00044_source.html">spf.h"
+#include "spf_dns.h"
+#href_anchor"el" href="a00008_source.html">spf_request.h"
+#include "spf_internal.h"
-Include dependency graph for spf_dns_test.c:
+Include dependency graph for spf_request.c:
- - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + +

Go to the source code of this file.

- - - - - - - - - + +

-Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_dns_test_data_t
&#href_anchor"memberdecls">

Macros

#define USE_SPF_SPEC_ZONE
 
#define USE_MAILZONE_ZONE
 
#define USE_EXT_MAILZONE_ZONE
 
#href_anchor"memItemRight" valign="bottom">SPF_FREE(x)    do { if (x) free(x); (x) = NULL; } while(0)
 
- - + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Functions

SPF_dns_server_t * SPF_dns_test_new (SPF_dns_server_t *layer_below, const char *name, int debug)
 
SPF_request_t * SPF_request_new (SPF_server_t *spf_server)
 
void SPF_request_free (SPF_request_t *sr)
 
SPF_errcode_t SPF_request_set_ipv4 (SPF_request_t *sr, struct in_addr addr)
 
SPF_errcode_t SPF_request_set_ipv6 (SPF_request_t *sr, struct in6_addr addr)
 
SPF_errcode_t SPF_request_set_ipv4_str (SPF_request_t *sr, const char *astr)
 
SPF_errcode_t SPF_request_set_ipv6_str (SPF_request_t *sr, const char *astr)
 
SPF_errcode_t SPF_request_set_helo_dom (SPF_request_t *sr, const char *dom)
 
const char * SPF_request_get_rec_dom (SPF_request_t *sr)
 
int SPF_request_set_env_from (SPF_request_t *sr, const char *from)
 
const char * SPF_request_get_client_dom (SPF_request_t *sr)
 
int SPF_request_is_loopback (SPF_request_t *sr)
 
SPF_errcode_t SPF_request_query_mailfrom (SPF_request_t *spf_request, SPF_response_t **spf_responsep)
 
SPF_errcode_t SPF_request_query_fallback (SPF_request_t *spf_request, SPF_response_t **spf_responsep, const char *record)
 
SPF_errcode_t SPF_request_query_rcptto (SPF_request_t *spf_request, SPF_response_t **spf_responsep, const char *rcpt_to)
 

Macro Definition Documentation

- -

◆ USE_EXT_MAILZONE_ZONE

+ +

◆ SPF_FREE

- + + + + +
#define USE_EXT_MAILZONE_ZONE#define SPF_FREE( x)    do { if (x) free(x); (x) = NULL; } while(0)
-

Definition at line 45 of file spf_dns_test.c.

+

Definition at line 37 of file spf_request.c.

- -

◆ USE_MAILZONE_ZONE

+

Function Documentation

+ +

◆ SPF_request_free()

- + + + + +
#define USE_MAILZONE_ZONEvoid SPF_request_free (SPF_request_t * sr)
-

Definition at line 44 of file spf_dns_test.c.

+

Definition at line 59 of file spf_request.c.

+ +

References SPF_ASSERT_NOTNULL, and SPF_FREE.

+ +

Referenced by main().

- -

◆ USE_SPF_SPEC_ZONE

+ +

◆ SPF_request_get_client_dom()

- + + + + +
#define USE_SPF_SPEC_ZONEconst char * SPF_request_get_client_dom (SPF_request_t * sr)
-

Definition at line 43 of file spf_dns_test.c.

+

Definition at line 196 of file spf_request.c.

Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_a0ee56ed35c87763d5fc5a2e3adf7e43e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_a12f1759a708ae16b782e86406ce3c683_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_a12f1759a708ae16b782e86406ce3c683_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_a4be188439efe765c664a1e04c750f23f_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_a4be188439efe765c664a1e04c750f23f_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_a5330cf664d7629a5829f923b4134bd09_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_a5330cf664d7629a5829f923b4134bd09_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_a87e5107c8283addb06163244828a373e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_a87e5107c8283addb06163244828a373e_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_ad426b5b2a48a40aa74e28646f7a37672_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00125_ae5bae4c0940f9610fb3e8f780d4342fe_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00125_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00125_source.html 2023-01-07 18:00:51.291098953 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00125_source.html 2023-01-07 18:00:51.287098924 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_dns_test.c Source File +libspf2: src/libspf2/spf_request.c Source File @@ -43,7 +43,7 @@
-
spf_dns_test.c
+
spf_request.c
Go to the documentation of this file.
1/*
@@ -61,481 +61,400 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"code" href="a00050.html">spf_sys_config.h"
+
16#href_anchor"code" href="a00053.html">spf_sys_config.h"
17
18#ifdef STDC_HEADERS
-
19# include <stdlib.h> /* malloc / free */
-
20#endif
-
21
-
22#ifdef HAVE_STRING_H
-
23# include <string.h> /* strstr / strdup */
-
24#else
-
25# ifdef HAVE_STRINGS_H
-
26# include <strings.h> /* strstr / strdup */
-
27# endif
-
28#endif
-
29
-
30#ifdef HAVE_NETDB_H
-
31#include <netdb.h>
-
32#endif
-
33
-
34#include "spf.h"
-
35#href_anchor"code" href="a00044.html">spf_dns.h"
-
36#include "spf_internal.h"
-
37#href_anchor"code" href="a00041.html">spf_dns_internal.h"
-
38#include "spf_dns_test.h"
-
39#href_anchor"code" href="a00065.html">spf_dns_zone.h"
-
40
-
41
-
42
-
43#define USE_SPF_SPEC_ZONE
-
44#define USE_MAILZONE_ZONE
-
45#define USE_EXT_MAILZONE_ZONE
-
46
-
47
-
48typedef struct
-
49{
-
50 const char *domain;
- - -
53 const char *data;
- -
55
-
56
+
19# include <stdio.h> /* stdin / stdout */
+
20# include <stdlib.h> /* malloc / free */
+
21#endif
+
22
+
23#ifdef HAVE_STRING_H
+
24# include <string.h> /* strstr / strdup */
+
25#else
+
26# ifdef HAVE_STRINGS_H
+
27# include <strings.h> /* strstr / strdup */
+
28# endif
+
29#endif
+
30
+
31
+
32#include "spf.h"
+
33#href_anchor"code" href="a00011.html">spf_dns.h"
+
34#include "spf_request.h"
+
35#href_anchor"code" href="a00032.html">spf_internal.h"
+
36
+
37#define SPF_FREE(x) \
+
38 do { if (x) free(x); (x) = NULL; } while(0)
+
39
+
40SPF_request_t *
+
41SPF_request_new(SPF_server_t *spf_server)
+
42{
+
43 SPF_request_t *sr;
+
44
+
45 sr = (SPF_request_t *)malloc(sizeof(SPF_request_t));
+
46 if (! sr)
+
47 return sr;
+
48 memset(sr, 0, sizeof(SPF_request_t));
+
49
+
50 sr->spf_server = spf_server;
+
51 sr->client_ver = AF_UNSPEC;
+
52 sr->ipv4.s_addr = htonl(INADDR_ANY);
+
53 sr->ipv6 = in6addr_any;
+
54
+
55 return sr;
+
56}
57
-
58
-
59static const SPF_dns_test_data_t SPF_dns_db[] = {
-
60 { "localhost",
-
61 ns_t_a, NETDB_SUCCESS, "127.0.0.1" },
-
62
-
63#ifdef USE_SPF_SPEC_ZONE
-
64 { "example.com",
-
65 ns_t_a, NETDB_SUCCESS, "192.0.2.3" },
-
66 { "example.com",
-
67 ns_t_mx, NETDB_SUCCESS, "mx.example.org" },
-
68 { "example.com",
-
69 ns_t_txt, NETDB_SUCCESS, "v=spf1 mx -all" },
-
70 { "3.2.0.192.in-addr.arpa",
-
71 ns_t_ptr, NETDB_SUCCESS, "mx.example.org" },
-
72 { "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.5.d.a.0.8.0.0.0.2.5.0.f.5.in6.arpa",
-
73 ns_t_ptr, NETDB_SUCCESS, "mx.example.org" },
-
74
-
75 { "noexist.example.com",
- -
77 { "mx.example.org",
-
78 ns_t_a, NETDB_SUCCESS, "192.0.2.3" },
-
79 { "mx.example.org",
-
80 ns_t_aaaa, NETDB_SUCCESS, "5f05:2000:80ad:5800::1" },
-
81 { "email.example.com",
-
82 ns_t_txt, NETDB_SUCCESS, "v=spf1 -all" },
-
83 { "*.example.com",
- -
85 { "*.example.org",
- -
87 { "*.example.net",
- -
89#endif
-
90
-
91#ifdef USE_MAILZONE_ZONE
-
92 { "01.spf1-test.mailzone.com",
-
93 ns_t_txt, NETDB_SUCCESS, "v=spf1 " },
-
94 { "02.spf1-test.mailzone.com",
-
95 ns_t_txt, NETDB_SUCCESS, "v=spf1 -all " },
-
96 { "03.spf1-test.mailzone.com",
-
97 ns_t_txt, NETDB_SUCCESS, "v=spf1 ~all" },
-
98 { "05.spf1-test.mailzone.com",
-
99 ns_t_txt, NETDB_SUCCESS, "v=spf1 default=deny " },
-
100 { "06.spf1-test.mailzone.com",
-
101 ns_t_txt, NETDB_SUCCESS, "v=spf1 ?all " },
-
102 { "07.spf1-test.mailzone.com",
-
103 ns_t_txt, NETDB_SUCCESS, "v=spf2 default=bogus " },
-
104 { "08.spf1-test.mailzone.com",
-
105 ns_t_txt, NETDB_SUCCESS, "v=spf1 -all ?all " },
-
106 { "09.spf1-test.mailzone.com",
-
107 ns_t_txt, NETDB_SUCCESS, "v=spf1 scope=header-from scope=envelope -all " },
-
108 { "10.spf1-test.mailzone.com",
-
109 ns_t_txt, NETDB_SUCCESS, "v=spf1 mx -all" },
-
110 { "10.spf1-test.mailzone.com",
-
111 ns_t_mx, NETDB_SUCCESS, "mx02.spf1-test.mailzone.com" },
-
112 { "10.spf1-test.mailzone.com",
-
113 ns_t_mx, NETDB_SUCCESS, "mx03.spf1-test.mailzone.com" },
-
114 { "10.spf1-test.mailzone.com",
-
115 ns_t_mx, NETDB_SUCCESS, "mx01.spf1-test.mailzone.com" },
-
116 { "11.spf1-test.mailzone.com",
-
117 ns_t_txt, NETDB_SUCCESS, "v=spf1 mx:spf1-test.mailzone.com -all" },
-
118 { "12.spf1-test.mailzone.com",
-
119 ns_t_txt, NETDB_SUCCESS, "v=spf1 mx mx:spf1-test.mailzone.com -all" },
-
120 { "12.spf1-test.mailzone.com",
-
121 ns_t_mx, NETDB_SUCCESS, "mx02.spf1-test.mailzone.com" },
-
122 { "12.spf1-test.mailzone.com",
-
123 ns_t_mx, NETDB_SUCCESS, "mx03.spf1-test.mailzone.com" },
-
124 { "12.spf1-test.mailzone.com",
-
125 ns_t_mx, NETDB_SUCCESS, "mx01.spf1-test.mailzone.com" },
-
126 { "13.spf1-test.mailzone.com",
-
127 ns_t_txt, NETDB_SUCCESS, "v=spf1 mx:spf1-test.mailzone.com mx:fallback-relay.spf1-test.mailzone.com -all" },
-
128 { "14.spf1-test.mailzone.com",
-
129 ns_t_txt, NETDB_SUCCESS, "v=spf1 mx mx:spf1-test.mailzone.com mx:fallback-relay.spf1-test.mailzone.com -all" },
-
130 { "14.spf1-test.mailzone.com",
-
131 ns_t_mx, NETDB_SUCCESS, "mx03.spf1-test.mailzone.com" },
-
132 { "14.spf1-test.mailzone.com",
-
133 ns_t_mx, NETDB_SUCCESS, "mx01.spf1-test.mailzone.com" },
-
134 { "14.spf1-test.mailzone.com",
-
135 ns_t_mx, NETDB_SUCCESS, "mx02.spf1-test.mailzone.com" },
-
136 { "20.spf1-test.mailzone.com",
-
137 ns_t_a, NETDB_SUCCESS, "192.0.2.120" },
-
138 { "20.spf1-test.mailzone.com",
-
139 ns_t_txt, NETDB_SUCCESS, "v=spf1 a -all" },
-
140 { "21.spf1-test.mailzone.com",
-
141 ns_t_txt, NETDB_SUCCESS, "v=spf1 a:spf1-test.mailzone.com -all" },
-
142 { "21.spf1-test.mailzone.com",
-
143 ns_t_a, NETDB_SUCCESS, "192.0.2.121" },
-
144 { "22.spf1-test.mailzone.com",
-
145 ns_t_txt, NETDB_SUCCESS, "v=spf1 a a:spf1-test.mailzone.com -all" },
-
146 { "22.spf1-test.mailzone.com",
-
147 ns_t_a, NETDB_SUCCESS, "192.0.2.122" },
-
148 { "30.spf1-test.mailzone.com",
-
149 ns_t_txt, NETDB_SUCCESS, "v=spf1 ptr -all" },
-
150 { "30.spf1-test.mailzone.com",
-
151 ns_t_a, NETDB_SUCCESS, "208.210.124.130" },
-
152 { "31.spf1-test.mailzone.com",
/usr/share/doc/packages/spf2-apidocs/html/a00126.png differs at offset '19' (PNG image data, 1135 x 427, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00126.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00126.png (hex) @@ -1,6 +1,6 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 04 6f 00 00 01 ab 08 03 00 00 00 49 cc 4a |...o.........I.J| -00000020 c6 00 00 00 63 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....cPLTE......T| +00000010 00 00 03 3d 00 00 01 9b 08 03 00 00 00 d9 6c 0e |...=..........l.| +00000020 9d 00 00 00 63 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....cPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| 00000040 70 e0 e0 e0 8b 8b 8b c3 c3 c3 a7 a7 a7 63 b8 ff |p............c..| 00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| @@ -10,24 +10,24 @@ 00000090 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 |....tRNS.@..f...| 000000a0 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b |.pHYs..........+| 000000b0 0e 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 09 9b |.... .IDATx.....| -000000c0 a4 2c 96 46 a3 f6 9a 6e 43 43 67 ac ca cc aa 7a |.,.F...nCCg....z| -000000d0 8c ff ff 2b 07 70 c3 05 05 64 b9 10 ef e9 af b3 |...+.p...d......| -000000e0 32 14 91 0b 78 02 dc f2 76 03 00 00 00 00 00 00 |2...x...v.......| -000000f0 00 00 00 00 00 00 00 00 c8 94 bf 14 88 5d 09 00 |.............]..| -00000100 80 20 fc fd 17 1f f8 06 80 d7 00 be 01 00 84 02 |. ..............| -00000110 be 01 00 84 02 be 01 00 84 02 be 01 00 84 02 be |................| -00000120 01 00 84 02 be 01 00 84 e2 d8 37 6f bf de ba 7f |..........7o....| -00000130 ec bf df ef 7b 6b 7f 7f b4 ff de de 3f 3e fe f4 |....{k......?>..| -00000140 49 77 d6 4a fc 59 af 87 6f 00 78 35 8e 7d d3 fe |Iw.J.Y..o.x5.}..| -00000150 e6 be f9 a3 f0 cd 3b 13 ca c7 af b7 5e 2c ed ef |......;.....^,..| -00000160 9d b5 f0 0d 00 60 e6 d8 37 ef 7c 70 c3 d8 f7 cd |.....`..7.|p....| -00000170 c7 ef 7f bf f9 ea 3f ef 22 e9 76 2d 7c 03 00 90 |......?.".v-|...| -00000180 90 7d f3 e7 a3 7b 7f 7b eb 7e 73 8f bc 77 ef bf |.}...{.{.~s..w..| -00000190 f9 1c 69 98 4f 7d fc 11 d3 26 91 82 ad 14 9f de |..i.O}...&......| -000001a0 bb 8f f6 8d 0f 62 7e bd f7 d3 29 b1 76 58 29 d6 |.....b~...).vX).| -000001b0 8e 19 ff fe e8 7e fd 62 53 33 96 eb af 71 3f f0 |.....~.bS3...q?.| -000001c0 0d 00 2f 87 e4 9b df dd ef b7 5f ef 6f dd 2f 26 |../......._.o./&| -000001d0 9a ae 7d fb f3 f1 af 6d 47 df 74 7c da f4 a7 4f |..}....mG.t|...O| -000001e0 31 7c 6a c7 11 0c 5b fa 8f 27 ed d7 8e 2b a5 f1 |1|j...[..'...+..| -000001f0 0d cf ad 65 8b d9 7f 6f 1f 63 3a f8 06 80 97 63 |...e...o.c:....c| +000000c0 e3 aa 8e 86 d3 d5 eb dc eb 7d c6 d5 b5 f5 e3 fc |.........}......| +000000d0 ff 5f 39 2c de 0d 18 30 02 91 e8 3b a7 ab 12 1b |._9,...0...;....| +000000e0 83 24 f4 1a 8c 9d d4 ed 46 22 91 48 24 12 89 44 |.$......F".H$..D| +000000f0 22 91 48 24 12 89 44 ca 57 5f 79 28 75 98 48 24 |".H$..D.W_y(u.H$| +00000100 85 be fe e5 20 a2 87 84 51 44 0f 89 e4 2b a2 87 |.... ...QD...+..| +00000110 44 f2 15 d1 43 22 f9 8a e8 21 91 7c 45 f4 90 48 |D...C"...!.|E..H| +00000120 be 22 7a 48 24 5f 99 e9 79 7b 7d 1b fe b1 ff ff |."zH$_..y{}.....| +00000130 be ab f6 fe fd e8 ff bd bd 7f 7c 7c ca a2 8a bd |..........||....| +00000140 a1 44 f4 90 30 ca 4c 4f ff 97 d3 f3 a9 a1 e7 9d |.D..0.LO........| +00000150 e1 f1 f1 fa 26 31 e9 ff 2a f6 3a ea 7d 5f 07 d1 |....&1..*.:.}_..| +00000160 43 c2 2c 33 3d ef 7c e0 61 52 d3 f3 f1 f7 df 5f |C.,3=.|.aR....._| +00000170 be fb f3 5d 14 3d ee 75 95 f6 10 a2 87 84 51 6b |...].=.u......Qk| +00000180 7a 3e 3f 86 f7 b7 b7 e1 2f a7 e2 7d 60 03 01 9b |z>?...../..}`...| +00000190 8d 8d 33 b7 8f 4f 31 41 13 25 d8 4e f1 ee 7d f8 |..3..O1A.%.N..}.| +000001a0 e8 df f8 00 f3 fa 2e 27 6e 62 ef b8 53 ec 1d eb |.......'nb..S...| +000001b0 15 55 be b1 1a 7b 01 e2 f0 fe fa 2a a0 7c e5 13 |.U...{.....*.|..| +000001c0 3f b9 55 1c 3a 1f 22 5b 27 7a 48 c8 b5 a2 e7 ef |?.U.:."['zH.....| +000001d0 f0 f7 ed f5 fd 6d 78 65 d8 0c fd db e7 c7 bf be |.....mxe........| +000001e0 9f e8 19 f8 04 ed 53 96 18 df f5 d3 50 c1 b6 fe |......S.....P...| +000001f0 e3 45 e5 de 69 e7 6a 20 11 55 7e 7c be 71 2c 79 |.E..i.j .U~|.q,y| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00128.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00128.html 2023-01-07 18:00:51.323099186 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00128.html 2023-01-07 18:00:51.323099186 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_dns_zone.c File Reference +libspf2: src/libspf2/spf_record.c File Reference @@ -44,146 +44,142 @@
-
spf_dns_zone.c File Reference
+
spf_record.c File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
-#include "spf_dns.h"
-#href_anchor"el" href="a00056_source.html">spf_internal.h"
-#include "spf_dns_internal.h"
-#href_anchor"el" href="a00065_source.html">spf_dns_zone.h"
+
#include "spf_sys_config.h"
+#href_anchor"el" href="a00044_source.html">spf.h"
+#include "spf_internal.h"
+#href_anchor"el" href="a00050_source.html">spf_record.h"
-Include dependency graph for spf_dns_zone.c:
+Include dependency graph for spf_record.c:
-
- - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + +

Go to the source code of this file.

- - - - - + +

-Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_dns_zone_config_t
&#href_anchor"memberdecls">

Macros

#define SPF_RR_TRY_REALLOC(rr, i, s)
 
#href_anchor"memItemRight" valign="bottom">SPF_MSGSIZE   4096
 
- - - - + + + + + + + +

Functions

SPF_errcode_t SPF_dns_zone_add_str (SPF_dns_server_t *spf_dns_server, const char *domain, ns_type rr_type, SPF_dns_stat_t herrno, const char *data)
 
SPF_dns_server_t * SPF_dns_zone_new (SPF_dns_server_t *layer_below, const char *name, int debug)
 
SPF_record_t * SPF_record_new (SPF_server_t *spf_server, const char *text)
 
void SPF_record_free (SPF_record_t *rp)
 
void SPF_macro_free (SPF_macro_t *mac)
 
SPF_errcode_t SPF_record_find_mod_value (SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t *spf_record, const char *mod_name, char **bufp, size_t *buflenp)
 
-

Detailed Description

-

This is really little more than a proof-of-concept static zone.

-

The static zone shouldn't just be an unsorted list that must be completely searched each time. Rather something should be done to allow quicker access. For example, sorting/bsearch, or red-black trees, or perfect hashes, or something.

-

Note that wildcards mean that a domain could match more than one record. The most specific record should match.

- -

Definition in file spf_dns_zone.c.

-

Macro Definition Documentation

- -

◆ SPF_RR_TRY_REALLOC

+

Macro Definition Documentation

+ +

◆ SPF_MSGSIZE

- - - - - - - - - - - - - - - - + +
#define SPF_RR_TRY_REALLOC( rr,
 i,
 #define SPF_MSGSIZE   4096
+
+ +

Definition at line 44 of file spf_record.c.

+ +
+
+

Function Documentation

+ +

◆ SPF_macro_free()

+ +
+
+ + + + + - -
void SPF_macro_free (SPF_macro_t * mac) )
-Value:
do { \
- -
if (__err != SPF_E_SUCCESS) return __err; \
-
} while(0)
-
SPF_errcode_t
Definition: spf_response.h:119
-
@ SPF_E_SUCCESS
Definition: spf_response.h:120
-
SPF_errcode_t SPF_dns_rr_buf_realloc(SPF_dns_rr_t *spfrr, int idx, size_t len)
Definition: spf_dns_rr.c:134
-
+ +

Definition at line 73 of file spf_record.c.

+ +

Referenced by SPF_request_get_exp(), SPF_server_free(), and SPF_server_set_explanation().

+
-

Function Documentation

- -

◆ SPF_dns_zone_add_str()

+ +

◆ SPF_record_find_mod_value()

- + - - + + - Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00128_a15b6ae27bf7ee04904f978958a45575c_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00128_a15b6ae27bf7ee04904f978958a45575c_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00128_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00128_source.html 2023-01-07 18:00:51.355099418 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00128_source.html 2023-01-07 18:00:51.347099360 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_dns_zone.c Source File +libspf2: src/libspf2/spf_record.c Source File @@ -43,431 +43,177 @@
-
spf_dns_zone.c
+
spf_record.c
-Go to the documentation of this file.
1/*
+Go to the documentation of this file.
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of either:
-
4 *
+
4 *
5 * a) The GNU Lesser General Public License as published by the Free
-
6 * Software Foundation; either version 2.1, or (at your option) any
-
7 * later version,
-
8 *
+
6 * Software Foundation; either version 2.1, or (at your option) any
+
7 * later version,
+
8 *
9 * OR
-
10 *
+
10 *
11 * b) The two-clause BSD license.
12 *
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"code" href="a00050.html">spf_sys_config.h"
+
16#href_anchor"code" href="a00053.html">spf_sys_config.h"
17
-
18#ifdef STDC_HEADERS
-
19# include <stdio.h> /* stdin / stdout */
-
20# include <stdlib.h> /* malloc / free */
-
21#endif
-
22
-
23
-
24#ifdef HAVE_STRING_H
-
25# include <string.h> /* strstr / strdup */
-
26#else
-
27# ifdef HAVE_STRINGS_H
-
28# include <strings.h> /* strstr / strdup */
-
29# endif
-
30#endif
-
31
-
32#ifdef HAVE_MEMORY_H
-
33#include <memory.h>
-
34#endif
-
35#if TIME_WITH_SYS_TIME
-
36# include <sys/time.h>
-
37# include <time.h>
-
38#else
-
39# if HAVE_SYS_TIME_H
-
40# include <sys/time.h>
-
41# else
-
42# include <time.h>
-
43# endif
-
44#endif
-
45#ifdef HAVE_NETDB_H
-
46# include <netdb.h>
-
47#endif
-
48#include <ctype.h>
-
49
-
50
-
51#include "spf.h"
-
52#href_anchor"code" href="a00044.html">spf_dns.h"
-
53#include "spf_internal.h"
-
54#href_anchor"code" href="a00041.html">spf_dns_internal.h"
-
55#include "spf_dns_zone.h"
+
18
+
19#ifdef STDC_HEADERS
+
20# include <stdio.h> /* stdin / stdout */
+
21# include <stdlib.h> /* malloc / free */
+
22# include <ctype.h> /* isupper / tolower */
+
23#endif
+
24
+
25#ifdef HAVE_INTTYPES_H
+
26#include <inttypes.h>
+
27#endif
+
28
+
29#ifdef HAVE_STRING_H
+
30# include <string.h> /* strstr / strdup */
+
31#else
+
32# ifdef HAVE_STRINGS_H
+
33# include <strings.h> /* strstr / strdup */
+
34# endif
+
35#endif
+
36
+
37
+
38
+
39#include "spf.h"
+
40#href_anchor"code" href="a00032.html">spf_internal.h"
+
41#include "spf_record.h"
+
42
+
43
+
44#define SPF_MSGSIZE 4096
+
45
+
46
+
47SPF_record_t *
+
48SPF_record_new(SPF_server_t *spf_server, const char *text)
+
49{
+
50 SPF_record_t *rp;
+
51
+
52 rp = (SPF_record_t *)malloc(sizeof(SPF_record_t));
+
53 if (!rp)
+
54 return rp;
+
55 memset(rp, 0, sizeof(SPF_record_t));
56
-
57
-
73typedef struct
+
57 rp->spf_server = spf_server;
+
58
+
59 return rp;
+
60}
+
61
+
62void
+
63SPF_record_free(SPF_record_t *rp)
+
64{
+
65 if (rp->mech_first)
+
66 free(rp->mech_first);
+
67 if (rp->mod_first)
+
68 free(rp->mod_first);
+
69 free(rp);
+
70}
+
71
+
72void
+
73SPF_macro_free(SPF_macro_t *mac)
74{
- -
76 int num_zone; /* This one really is an int. */
-
77 int zone_buf_len; /* This one really is an int. */
- - -
80
-
81
-
82
-
83static inline SPF_dns_zone_config_t *SPF_voidp2spfhook( void *hook )
-
84 { return (SPF_dns_zone_config_t *)hook; }
-
85static inline void *SPF_spfhook2voidp( SPF_dns_zone_config_t *spfhook )
-
86 { return (void *)spfhook; }
-
87
+
75 free(mac);
+
76}
+
77
+
78/* This expects datap and datalenp NOT to be initialised. */
+
79static SPF_errcode_t
+
80SPF_record_find_mod_data(
+
81 SPF_record_t *spf_record,
+
82 const char *mod_name,
+
83 SPF_data_t **datap, size_t *datalenp)
+
84{
+
85 SPF_mod_t *mod;
+
86 size_t name_len;
+
87 int i;
88
-
89
+
89 name_len = strlen( mod_name );
90
-
95static SPF_dns_rr_t *
-
96SPF_dns_zone_find(SPF_dns_server_t *spf_dns_server,
-
97 const char *domain, ns_type rr_type,
-
98 int exact)
-
99{
-
100 SPF_dns_zone_config_t *spfhook;
-
101 int i;
+
91 /*
+
92 * make sure we were passed valid data to work with
+
93 */
+
94 SPF_ASSERT_NOTNULL(spf_record);
+
95 SPF_ASSERT_NOTNULL(mod_name);
+
96 SPF_ASSERT_NOTNULL(datap);
+
97 SPF_ASSERT_NOTNULL(datalenp);
+
98
+
99 /*
+
100 * find modifier
+
101 */
102
-
103 spfhook = SPF_voidp2spfhook(spf_dns_server->hook);
-
104
-
105 if (spf_dns_server->debug)
-
106 SPF_debugf("zone: Searching for RR %s (%d)", domain, rr_type);
-
107
-
108 /* If the record we want or are adding starts with '*.' then it must match
-
109 * exactly. */
-
110 if (exact || strncmp(domain, "*.", 2) == 0) {
-
111 for (i = 0; i < spfhook->num_zone; i++) {
-
112 if (spfhook->zone[i]->rr_type == rr_type
-
113 && strcasecmp(spfhook->zone[i]->domain, domain) == 0)
/usr/share/doc/packages/spf2-apidocs/html/a00129.png differs at offset '19' (PNG image data, 1054 x 427, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00129.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00129.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 04 1e 00 00 01 ab 08 03 00 00 00 50 47 a4 |.............PG.| -00000020 60 00 00 00 66 50 4c 54 45 fe ff ff 8b 8b 8b c3 |`...fPLTE.......| -00000030 c3 c3 a7 a7 a7 54 54 54 7a 7a 7a c4 c4 c4 70 70 |.....TTTzzz...pp| -00000040 70 8c 8c 8c 1c 1c 1c a8 a8 a8 38 38 38 e0 e0 e0 |p.........888...| -00000050 63 b8 ff 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f |c...........???.| -00000060 1f 1f 7f 7f 7f 31 31 31 53 53 53 5f 5f 5f 39 39 |.....111SSS___99| +00000010 00 00 03 37 00 00 01 9b 08 03 00 00 00 ce 4e 9e |...7..........N.| +00000020 54 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |T...fPLTE......T| +00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| +00000040 70 e0 e0 e0 a7 a7 a7 c3 c3 c3 8b 8b 8b 63 b8 ff |p............c..| +00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| +00000060 7f 7f 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 |..ttt111SSS___99| 00000070 39 72 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c |9rrr...&&&...LLL| -00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff 34 |fff............4| -00000090 fd 80 fe 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.......tRNS.@..f| +00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff a6 |fff.............| +00000090 fc eb 02 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.......tRNS.@..f| 000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| 000000b0 01 95 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ed |..+.... .IDATx..| -000000c0 9d 89 7a a3 ba 96 46 d3 7d d3 99 6d 06 77 93 ca |..z...F.}..m.w..| -000000d0 50 f5 e1 f7 7f c9 16 12 a3 41 a0 61 4b 6c e1 7f |P........A.aKl..| -000000e0 dd 7b 52 31 83 e6 bd 2c 01 76 1e 1e 00 00 00 00 |.{R1...,.v......| -000000f0 00 00 00 00 00 00 00 00 00 00 12 fe 72 60 ef 46 |............r`.F| -00000100 00 00 2c f1 f7 df fe 40 0f 00 b0 04 7a 00 00 68 |..,....@....z..h| -00000110 80 1e 00 00 1a a0 07 00 80 06 e8 01 00 a0 01 7a |...............z| -00000120 00 00 68 80 1e 00 00 1a 56 f5 f0 f5 f9 55 ff 13 |..h.....V....U..| -00000130 ff ff f3 bd b4 f7 cf 4f f5 ef eb fb e7 e7 57 1d |.......O......W.| -00000140 ba b0 77 c4 ef ed 7e e8 01 00 ee ac ea a1 fa d3 |..w...~.........| -00000150 e8 e1 57 a3 87 6f 11 ff 3f 9f 5f ca 03 d5 9f 85 |..W..o..?._.....| -00000160 bd d0 03 00 29 b3 aa 87 ef 66 ea 20 58 d6 c3 cf |....)....f. X...| -00000170 9f 7f 7f 9a dd bf df f2 d0 f9 5e e8 01 80 a4 19 |..........^.....| -00000180 e9 e1 f7 a7 fe fe fa aa ff 34 61 ff 5d 7f ff 69 |.........4a.]..i| -00000190 16 0c ed e2 e2 e7 57 ae 21 e4 11 62 a7 7c f5 5d |......W.!..b.|.]| -000001a0 ff 54 5f cd 14 e1 f3 5b ad 2d e4 de 76 a7 dc db |.T_....[.-..v...| -000001b0 25 fc e7 a7 fe fc 14 eb 14 91 ea 67 97 0f f4 00 |%..........g....| -000001c0 00 7b 06 3d fc a9 ff 7c 7d 7e 7f d5 9f c2 0b 75 |.{.=...|}~.....u| -000001d0 f5 f5 fb f3 af aa 3a 3d d4 cd 1a e2 57 1d d1 be |......:=....W...| -000001e0 aa ba f9 81 d8 fa af 39 54 ed ed 76 8e 66 0f 4d |.......9T..v.f.M| -000001f0 6a 95 d8 2c fe ff f5 d3 1d 07 3d 00 c0 9e 89 1e |j..,......=.....| +000000c0 9d 09 9b a3 ac ba ae ab ab c7 b5 b6 f3 d9 db ae |................| +000000d0 a1 bb 2f f3 ff ff e4 61 d0 38 81 32 0b f8 dc df |../....a.8.2....| +000000e0 d7 55 15 41 78 05 ee 80 c6 24 2f 2f 00 00 00 00 |.U.Ax....$//....| +000000f0 00 00 00 00 00 00 00 e8 f1 37 6e ae 6e 1e 00 84 |.........7n.n...| +00000100 fc fd 17 33 f0 06 c4 09 bc 01 40 1f 78 03 80 3e |...3......@.x..>| +00000110 f0 06 00 7d e0 0d 00 fa c0 1b 00 f4 81 37 00 e8 |...}.........7..| +00000120 73 e8 cd fb ef f7 e1 1f f9 ff ed 43 94 fa f6 d9 |s..........C....| +00000130 ff 7b ff f8 fc fc c3 b3 0a 52 95 f9 b3 dd 1b de |.{.......R......| +00000140 80 a8 39 f4 a6 7f a3 de fc 91 78 f3 41 c4 f8 fc |..9.......x.A...| +00000150 fd ce 05 e9 df 04 a9 f0 06 64 ca a1 37 1f 74 b2 |.........d..7.t.| +00000160 21 88 bd f9 7c fb f7 46 93 ff 7c b0 ac fb 54 78 |!...|..F..|...Tx| +00000170 03 72 65 e1 cd 9f cf e1 e3 fd 7d 78 a3 3e 7c 0c |.re.......}x.>|.| +00000180 1f 6f 74 ed 35 ae d3 3e ff b0 e5 18 cb 41 12 d9 |.ot.5..>.....A..| +00000190 a3 8f e1 b3 7f a7 93 ca ef 0f be 4c 63 a9 63 22 |...........Lc.c"| +000001a0 4b 1d cb 65 45 be 93 12 7b a6 20 2d f9 8d 27 b3 |K..eE...{. -..'.| +000001b0 94 b7 cf e1 f7 6f ee 0d 4f 84 37 20 7a 66 6f de |.....o..O.7 zfo.| +000001c0 86 b7 f7 df 1f ef c3 6f 22 cc d0 bf ff f9 fc d7 |.......o".......| +000001d0 f7 93 37 03 5d 8e fd e1 39 c6 47 fd 34 a3 90 ad |..7.]...9.G.4...| +000001e0 ff 68 56 9e 3a 25 2e e6 1b 56 e4 e7 9f 77 2a 24 |.hV.:%...V...w*$| +000001f0 2f f9 9d 3e 1a de 58 0a dd d2 0f bf 79 46 56 2d |/..>..X.....yFV-| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00131.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00131.html 2023-01-07 18:00:51.395099710 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00131.html 2023-01-07 18:00:51.395099710 +0000 @@ -51,29 +51,29 @@
spf_compile.c File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00056_source.html">spf_internal.h"
-#include "spf.h"
-#href_anchor"el" href="a00026_source.html">spf_response.h"
-#include "spf_record.h"
+
#include "spf_sys_config.h"
+#href_anchor"el" href="a00032_source.html">spf_internal.h"
+#include "spf.h"
+#href_anchor"el" href="a00035_source.html">spf_response.h"
+#include "spf_record.h"
Include dependency graph for spf_compile.c:
- - - - - - - - - - - - + + + + + + + + + + + +
@@ -88,7 +88,7 @@ Macros
- + @@ -126,9 +126,9 @@ Functions - + - +
SPF_errcode_t SPF_dns_zone_add_str SPF_errcode_t SPF_record_find_mod_value (SPF_dns_server_t * spf_dns_server, SPF_server_t * spf_server,
const char * 
#define SPF_RECORD_BUFSIZ   4096
 
#define ALIGN_DECL(decl)   union { double d; long l; decl } __attribute__((aligned(_ALIGN_SZ))) u
#define ALIGN_DECL(decl)   union { double d; long l; decl } __attribute__((aligned(_ALIGN_SZ))) u
 
#define ALIGNED_DECL(var)   u.var
 
 __attribute__ ((warn_unused_result))
 
SPF_errcode_t SPF_record_compile (SPF_server_t *spf_server, SPF_response_t *spf_response, SPF_record_t **spf_recordp, const char *record)
SPF_errcode_t SPF_record_compile (SPF_server_t *spf_server, SPF_response_t *spf_response, SPF_record_t **spf_recordp, const char *record)
 
SPF_errcode_t SPF_record_compile_macro (SPF_server_t *spf_server, SPF_response_t *spf_response, SPF_macro_t **spf_macrop, const char *record)
SPF_errcode_t SPF_record_compile_macro (SPF_server_t *spf_server, SPF_response_t *spf_response, SPF_macro_t **spf_macrop, const char *record)
 

Macro Definition Documentation

@@ -143,7 +143,7 @@
(   decl)   union { double d; long l; decl } __attribute__((aligned(_ALIGN_SZ))) u   union { double d; long l; decl } __attribute__((aligned(_ALIGN_SZ))) u
@@ -205,16 +205,16 @@
Value:
do { \
if ( (_val) + _align_sz(_len) > (_max) ) { \
-
return SPF_response_add_error_ptr(spf_response, \
-
big_err, NULL, src, \
+
return SPF_response_add_error_ptr(spf_response, \
+
big_err, NULL, src, \
"SPF domainspec too long " \
"(%d chars, %d max)", \
(_val) + (_len), _max); \
} \
(_val) += _align_sz(_len); \
} while(0)
-
SPF_errcode_t SPF_response_add_error_ptr(SPF_response_t *rp, SPF_errcode_t code, const char *text, const char *tptr, const char *format,...)
Definition: spf_response.c:238
-
#define NULL
Definition: spf_internal.h:28
+
#define NULL
Definition: spf_internal.h:28
+
SPF_errcode_t SPF_response_add_error_ptr(SPF_response_t *rp, SPF_errcode_t code, const char *text, const char *tptr, const char *format,...)
Definition: spf_response.c:238

Definition at line 441 of file spf_compile.c.

@@ -235,10 +235,10 @@
Value:
if ( !is_mod ) \
-
return SPF_response_add_error_ptr(spf_response, \
- +
return SPF_response_add_error_ptr(spf_response, \
+
"'%c' macro is only valid in modifiers", c);
-
@ SPF_E_INVALID_VAR
Definition: spf_response.h:132
+
@ SPF_E_INVALID_VAR
Definition: spf_response.h:132
@@ -259,13 +259,13 @@
Value:
do { \
if (ds_len + _len > ds_avail) \
-
return SPF_response_add_error_ptr(spf_response, \
- +
return SPF_response_add_error_ptr(spf_response, \
+
"String literal fragment too long " \
"(%d chars, %d max)", \
ds_len, ds_avail); \
} while(0)
-
@ SPF_E_BIG_STRING
Definition: spf_response.h:135
+
@ SPF_E_BIG_STRING
Definition: spf_response.h:135

Definition at line 462 of file spf_compile.c.

@@ -287,12 +287,12 @@
Value:
do { \
if ( ds_len > 0 ) { \
-
if ( ds_len > SPF_MAX_STR_LEN ) { \
-
return SPF_response_add_error_ptr(spf_response, \
- +
if ( ds_len > SPF_MAX_STR_LEN ) { \
+
return SPF_response_add_error_ptr(spf_response, \
+
"String literal too long " \
"(%d chars, %d max)", \
-
ds_len, SPF_MAX_STR_LEN); \
+
ds_len, SPF_MAX_STR_LEN); \
} \
data->ds.len = ds_len; \
len = sizeof( *data ) + ds_len; \
@@ -301,7 +301,7 @@
ds_len = 0; \
} \
} while(0)
-
#define SPF_MAX_STR_LEN
Definition: spf_record.h:73
+
#define SPF_MAX_STR_LEN
Definition: spf_record.h:73

Definition at line 471 of file spf_compile.c.

@@ -323,7 +323,7 @@
Value:
do { \
-
data->ds.parm_type = PARM_STRING; \
+
data->ds.parm_type = PARM_STRING; \
data->ds.len = 0; \
/* Magic numbers for x/Nc in gdb. */ \
data->ds.__unused0 = 0xba; data->ds.__unused1 = 0xbe; \
@@ -331,8 +331,8 @@
ds_avail = _avail - sizeof(SPF_data_t); \
ds_len = 0; \
} while(0)
-
#define PARM_STRING
Definition: spf_record.h:100
- +
#define PARM_STRING
Definition: spf_record.h:100
+

Definition at line 452 of file spf_compile.c.

@@ -504,7 +504,7 @@
- + @@ -539,24 +539,24 @@

Definition at line 1180 of file spf_compile.c.

-

References MECH_A, MECH_ALL, MECH_EXISTS, MECH_INCLUDE, MECH_IP4, MECH_IP6, MECH_MX, MECH_PTR, MECH_REDIRECT, SPF_mechtype_t::mech_type, NULL, PREFIX_FAIL, PREFIX_NEUTRAL, PREFIX_PASS, PREFIX_SOFTFAIL, PREFIX_UNKNOWN, SPF_ASSERT_NOTNULL, SPF_debugf, SPF_E_INTERNAL_ERROR, SPF_E_INVALID_CHAR, SPF_E_INVALID_OPT, SPF_E_INVALID_PREFIX, SPF_E_MOD_W_PREF, SPF_E_NO_MEMORY, SPF_E_NOT_SPF, SPF_E_SUCCESS, SPF_E_UNKNOWN_MECH, SPF_error_code(), SPF_error_errorp(), SPF_record_new(), SPF_response_add_error(), SPF_response_add_error_ptr(), SPF_response_add_warn_ptr(), SPF_response_errors(), SPF_response_message(), SPF_response_messages(), SPF_VER_STR, STREQ_SIZEOF, and STREQ_SIZEOF_N.

+

References MECH_A, MECH_ALL, MECH_EXISTS, MECH_INCLUDE, MECH_IP4, MECH_IP6, MECH_MX, MECH_PTR, MECH_REDIRECT, SPF_mechtype_t::mech_type, NULL, PREFIX_FAIL, PREFIX_NEUTRAL, PREFIX_PASS, PREFIX_SOFTFAIL, PREFIX_UNKNOWN, SPF_ASSERT_NOTNULL, SPF_debugf, SPF_E_INTERNAL_ERROR, SPF_E_INVALID_CHAR, SPF_E_INVALID_OPT, SPF_E_INVALID_PREFIX, SPF_E_MOD_W_PREF, SPF_E_NO_MEMORY, SPF_E_NOT_SPF, SPF_E_SUCCESS, SPF_E_UNKNOWN_MECH, SPF_error_code(), SPF_error_errorp(), SPF_record_new(), SPF_response_add_error(), SPF_response_add_error_ptr(), SPF_response_add_warn_ptr(), SPF_response_errors(), SPF_response_message(), SPF_response_messages(), SPF_VER_STR, STREQ_SIZEOF, and STREQ_SIZEOF_N.

-

Referenced by main(), SPF_request_query_fallback(), SPF_request_query_rcptto(), SPF_server_get_record(), and SPF_server_set_localpolicy().

+

Referenced by main(), SPF_request_query_fallback(), SPF_request_query_rcptto(), SPF_server_get_record(), and SPF_server_set_localpolicy().

Here is the call graph for this function:
/usr/share/doc/packages/spf2-apidocs/html/a00131_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00131_source.html 2023-01-07 18:00:51.455100146 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00131_source.html 2023-01-07 18:00:51.451100116 +0000 @@ -61,8 +61,8 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"code" href="a00050.html">spf_sys_config.h"
-
17#include "spf_internal.h"
+
16#href_anchor"code" href="a00053.html">spf_sys_config.h"
+
17#include "spf_internal.h"
18
19
20#href_anchor"line"> 21# include <stdio.h> /* stdin / stdout */
@@ -86,10 +86,10 @@
39
40#undef SPF_ALLOW_DEPRECATED_DEFAULT
41
-
42#include "spf.h"
-
43#href_anchor"code" href="a00056.html">spf_internal.h"
-
44#include "spf_response.h"
-
45#href_anchor"code" href="a00071.html">spf_record.h"
+
42#include "spf.h"
+
43#href_anchor"code" href="a00032.html">spf_internal.h"
+
44#include "spf_response.h"
+
45#href_anchor"code" href="a00050.html">spf_record.h"
46
47typedef
48enum SPF_cidr_enum {
@@ -118,16 +118,16 @@
77
78static const SPF_mechtype_t spf_mechtypes[] = {
- - - - - - - - - - + + + + + + + + + +
89};
90
91#define spf_num_mechanisms \
@@ -141,10 +141,10 @@
99 if (spf_mechtypes[i].mech_type == mech_type)
100 return &spf_mechtypes[i];
101 }
-
102 return NULL;
+
102 return NULL;
103}
104
-
105__attribute__((warn_unused_result))
+
105__attribute__((warn_unused_result))
106static int
107SPF_c_ensure_capacity(void **datap, size_t *sizep, size_t length)
108{
@@ -162,7 +162,7 @@
120 return 0;
121}
122
-
132static SPF_errcode_t
+
132static SPF_errcode_t
133SPF_c_parse_cidr_ip6(SPF_response_t *spf_response,
134 unsigned char *maskp,
135 const char *src)
@@ -174,16 +174,16 @@
141 SPF_debugf("Parsing ip6 CIDR starting at %s", src);
142 */
143
-
144 mask = strtoul(src + 1, NULL, 10);
+
144 mask = strtoul(src + 1, NULL, 10);
145
146 if (mask > 128) {
- -
148 NULL, src,
+ +
148 NULL, src,
149 "Invalid IPv6 CIDR netmask (>128)");
150 }
151 else if (mask == 0) {
- -
153 NULL, src,
+ +
153 NULL, src,
154 "Invalid IPv6 CIDR netmask (=0)");
155 }
156 else if (mask == 128) {
@@ -192,10 +192,10 @@
159
160 *maskp = mask;
161
-
162 return SPF_E_SUCCESS;
+
162 return SPF_E_SUCCESS;
163}
164
-
174static SPF_errcode_t
+
174static SPF_errcode_t
175SPF_c_parse_cidr_ip4(SPF_response_t *spf_response,
176 unsigned char *maskp,
177 const char *src)
@@ -207,16 +207,16 @@
183 SPF_debugf("Parsing ip4 CIDR starting at %s", src);
184 */
185
-
186 mask = strtoul(src + 1, NULL, 10);
+
186 mask = strtoul(src + 1, NULL, 10);
187
188 if ( mask > 32 ) {
- -
190 NULL, src,
+ +
190 NULL, src,
191 "Invalid IPv4 CIDR netmask (>32)");
192 }
193 else if ( mask == 0 ) {
- -
195 NULL, src,
+ +
195 NULL, src,
196 "Invalid IPv4 CIDR netmask (=0)");
197 }
198 else if ( mask == 32 ) {
@@ -225,19 +225,19 @@
201
202 *maskp = mask;
203
-
204 return SPF_E_SUCCESS;
+
204 return SPF_E_SUCCESS;
205}
206
-
212static SPF_errcode_t
+
212static SPF_errcode_t
213SPF_c_parse_cidr(SPF_response_t *spf_response,
214 SPF_data_cidr_t *data,
215 const char *src, size_t *src_len)
216{
-
217 SPF_errcode_t err;
+
217 SPF_errcode_t err;
218 size_t idx;
219
220 memset(data, 0, sizeof(SPF_data_cidr_t));
-
221 data->parm_type = PARM_CIDR;
+
221 data->parm_type = PARM_CIDR;
222
223 /* Find the beginning of the CIDR length notation.
224 * XXX This assumes that there is a non-digit in the string.
@@ -284,10 +284,10 @@
265 }
266 }
267
-
268 return SPF_E_SUCCESS;
+
268 return SPF_E_SUCCESS;
269}
270
-
271static SPF_errcode_t
+
271static SPF_errcode_t
272SPF_c_parse_var(SPF_response_t *spf_response, SPF_data_var_t *data,
273 const char *src, int is_mod)
274{
@@ -304,11 +304,11 @@
285 c = *p;
286 if ( isupper( (unsigned char)( c ) ) )
287 {
-
288 data->url_encode = TRUE;
+
288 data->url_encode = TRUE;
289 c = tolower(c);
290 }
291 else
-
292 data->url_encode = FALSE;
+
292 data->url_encode = FALSE;
293
294#define SPF_CHECK_IN_MODIFIER() \
295 if ( !is_mod ) \
@@ -319,55 +319,55 @@
300 switch ( c )
301 {
302 case 'l': /* local-part of envelope-sender */
-
303 data->parm_type = PARM_LP_FROM;
+
303 data->parm_type = PARM_LP_FROM;
304 break;
305
306 case 's': /* envelope-sender */
-
307 data->parm_type = PARM_ENV_FROM;
+
307 data->parm_type = PARM_ENV_FROM;
308 break;
309
310 case 'o': /* envelope-domain */
-
311 data->parm_type = PARM_DP_FROM;
/usr/share/doc/packages/spf2-apidocs/html/a00134.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00134.html 2023-01-07 18:00:51.479100321 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00134.html 2023-01-07 18:00:51.479100321 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_utils.c File Reference +libspf2: src/libspf2/spf_id2str.c File Reference @@ -44,154 +44,87 @@
-
spf_utils.c File Reference
+
spf_id2str.c File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
-#include "spf_internal.h"
+
#include "spf_sys_config.h"
+#href_anchor"el" href="a00044_source.html">spf.h"
+#include "spf_internal.h"
-Include dependency graph for spf_utils.c:
+Include dependency graph for spf_id2str.c:
- - - - - - - - - - - - - - + + + + + + + + + + + + + +

Go to the source code of this file.

SPF_errcode_t SPF_record_compile SPF_errcode_t SPF_record_compile ( SPF_server_t *  spf_server,
+ + + +

+Macros

#href_anchor"memItemRight" valign="bottom">debug   spf_record->spf_server->debug
 
- - - - - - - - - - - - + +

Functions

void&#href_anchor"memItemRight" valign="bottom">SPF_get_lib_version (int *major, int *minor, int *patch)
 
char * SPF_sanitize (SPF_server_t *spf_server, char *str)
 
const char * SPF_strresult (SPF_result_t result)
 
const char * SPF_strreason (SPF_reason_t reason)
 
const char * SPF_strrrtype (ns_type rr_type)
 
SPF_errcode_t SPF_recalloc (char **bufp, size_t *buflenp, size_t buflen)
 
SPF_errcode_t SPF_record_stringify (SPF_record_t *spf_record, char **bufp, size_t *buflenp)
 
-

Function Documentation

- -

◆ SPF_get_lib_version()

+

Macro Definition Documentation

+ +

◆ debug

- - - - - - - - - - - - - - - - - - - - - +
void SPF_get_lib_version (int * major,
int * minor,
int * patch 
)#define debug   spf_record->spf_server->debug
-

Returns the version numbers of this library.

- -

Definition at line 38 of file spf_utils.c.

- -

References SPF_LIB_VERSION_MAJOR, SPF_LIB_VERSION_MINOR, and SPF_LIB_VERSION_PATCH.

- -

Referenced by main().

- -

◆ SPF_recalloc()

+

Function Documentation

+ +

◆ SPF_record_stringify()

- + - - - - - - - - + + - - - - - - - - -
SPF_errcode_t SPF_recalloc SPF_errcode_t SPF_record_stringify (char ** bufp,
size_t * buflenp, SPF_record_t * spf_record,
size_t buflen 
)
-
-

This is NOT a general-purpose realloc. It is used only for text buffers. It will allocate at least 64 bytes of storage.

-

This function is allowed to zero all the RAM returned, so it really isn't a realloc.

-

Do not call this function from outside the library.

- -

Definition at line 188 of file spf_utils.c.

- -

References NULL, SPF_ASSERT_NOTNULL, SPF_E_NO_MEMORY, and SPF_E_SUCCESS.

- -

Referenced by SPF_record_expand_data(), and SPF_record_stringify().

- -
-
- -

◆ SPF_sanitize()

- -
-
- - - - - - + + Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00134_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00134_a669d2cbf8d92f7db3eb463cf1bb6023a_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00134_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00134_source.html 2023-01-07 18:00:51.503100496 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00134_source.html 2023-01-07 18:00:51.511100554 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_utils.c Source File +libspf2: src/libspf2/spf_id2str.c Source File @@ -43,7 +43,7 @@
-
spf_utils.c
+
spf_id2str.c
Go to the documentation of this file.
1/*
@@ -52,7 +52,7 @@
4 *
5 * a) The GNU Lesser General Public License as published by the Free
6 * Software Foundation; either version 2.1, or (at your option) any
-
7 * later version,
+
7 * later version,
8 *
9 * OR
10 *
@@ -61,218 +61,543 @@
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16
-
17#href_anchor"code" href="a00050.html">spf_sys_config.h"
+
16#href_anchor"code" href="a00053.html">spf_sys_config.h"
+
17
18
-
19#ifdef STDC_HEADERS
-
20# include <stdlib.h> /* malloc / free */
-
21# include <ctype.h> /* isupper / tolower */
-
22#endif
-
23
-
24#ifdef HAVE_MEMORY_H
-
25#include <memory.h>
-
26#endif
-
27
-
28
+
19
+
20#ifdef STDC_HEADERS
+
21# include <stdio.h> /* stdin / stdout */
+
22# include <stdlib.h> /* malloc / free */
+
23# include <ctype.h> /* isupper / tolower */
+
24#endif
+
25
+
26#ifdef HAVE_INTTYPES_H
+
27#include <inttypes.h>
+
28#endif
29
-
30#include "spf.h"
-
31#href_anchor"code" href="a00056.html">spf_internal.h"
-
32
-
33
-
37void
-
38SPF_get_lib_version(int *major, int *minor, int *patch)
-
39{
-
40 *major = SPF_LIB_VERSION_MAJOR;
-
41 *minor = SPF_LIB_VERSION_MINOR;
-
42 *patch = SPF_LIB_VERSION_PATCH;
-
43}
-
44
-
45
-
46
-
53char *
-
54SPF_sanitize(SPF_server_t *spf_server, char *str)
-
55{
-
56 char *p;
-
57
-
58 SPF_ASSERT_NOTNULL(spf_server);
+
30#ifdef HAVE_STRING_H
+
31# include <string.h> /* strstr / strdup */
+
32#else
+
33# ifdef HAVE_STRINGS_H
+
34# include <strings.h> /* strstr / strdup */
+
35# endif
+
36#endif
+
37
+
38
+
39#include "spf.h"
+
40#href_anchor"code" href="a00032.html">spf_internal.h"
+
41
+
42
+
43static SPF_errcode_t
+
44SPF_record_stringify_data(SPF_data_t *data, SPF_data_t *data_end,
+
45 char **p_p, char *p_end,
+
46 int is_mod, int cidr_ok, int debug )
+
47{
+
48 char *p = *p_p;
+
49
+
50 size_t len;
+
51
+
52 SPF_data_t *cidr_data;
+
53
+
54 if (debug)
+
55 SPF_debugf("%s", " string data: Building");
+
56
+
57 if (p_end - p <= 0)
+
59
-
60 if (! spf_server->sanitize)
-
61 return str;
-
62
-
63 if (str == NULL)
-
64 return str;
-
65
-
66 for (p = str; *p != '\0'; p++)
-
67 if (! isprint( (unsigned char)*p ))
-
68 *p = '?';
-
69
-
70 return str;
-
71}
+
60 cidr_data = NULL;
+
61 if ( data < data_end && data->dc.parm_type == PARM_CIDR )
+
62 {
+
63 if (debug)
+
64 SPF_debugf(" string data: Found a CIDR at %p", data);
+
65 if ( !cidr_ok )
+ +
67
+
68 cidr_data = data;
+
69 data = SPF_data_next( data );
+
70 }
+
71
72
-
73
-
74
-
75
-
76
-
80const char *
- -
82{
-
83 switch (result) {
- -
85 return "(invalid)";
-
86 break;
-
87
-
88 case SPF_RESULT_PASS: /* + */
-
89 return "pass";
-
90 break;
-
91
-
92 case SPF_RESULT_FAIL: /* - */
-
93 return "fail";
-
94 break;
-
95
-
96 case SPF_RESULT_SOFTFAIL: /* ~ */
-
97 return "softfail";
-
98 break;
-
99
-
100 case SPF_RESULT_NEUTRAL: /* ? */
-
101 return "neutral";
-
102 break;
-
103
-
104 case SPF_RESULT_PERMERROR: /* permanent error */
-
105 return "permerror";
-
106 break;
-
107
-
108 case SPF_RESULT_TEMPERROR: /* temporary error */
-
109 return "temperror";
-
110 break;
+
73 for( ; data < data_end; data = SPF_data_next( data ) )
+
74 {
+
75 if (debug)
+
76 SPF_debugf(" string data: Handling data type %d at %p",
+
77 data->ds.parm_type, data);
+
78 if ( data->ds.parm_type == PARM_STRING )
+
79 {
+
80 char *s = SPF_data_str( data );
+
81 char *s_end = s + data->ds.len;
+
82 if (debug)
+
83 SPF_debugf(" string data: String is [%d] '%*.*s'",
+
84 data->ds.len, data->ds.len, data->ds.len, s);
+
85
+
86 if (p_end - (p + data->ds.len) <= 0)
+ +
88
+
89 while (s < s_end) {
+
90 if (*s == ' ') {
+
91 *p++ = '%';
+
92 *p++ = '_';
+
93 s++;
+
94 }
+
95 else if (*s == '%') {
+
96 *p++ = '%';
+
97 s++;
+
98 if (s[0] == '2' && s[1] == '0') {
+
99 *p++ = '-';
+
100 s += 2;
+
101 }
+
102 else {
+
103 *p++ = '%';
/usr/share/doc/packages/spf2-apidocs/html/a00135.png differs at offset '191' (PNG image data, 693 x 411, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00135.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00135.png (hex) @@ -1,33 +1,33 @@ 00000080 99 99 99 d3 d3 d3 00 00 00 ff ff ff a0 78 e4 11 |.............x..| 00000090 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 |....tRNS.@..f...| 000000a0 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b |.pHYs..........+| -000000b0 0e 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 87 7a |.... .IDATx....z| -000000c0 a4 3a 12 46 9d c6 9e bd b7 89 bb 8c e3 7c ea f7 |.:.F.........|..| -000000d0 7f ca 55 20 08 90 84 72 80 fa 77 af c7 2d 14 4a |..U ...r..w..-.J| -000000e0 a5 d3 45 21 e8 f6 c3 03 08 04 02 81 40 20 10 08 |..E!........@ ..| -000000f0 04 02 81 40 67 d2 4f 6e 4a ed 10 50 01 fa f9 9b |...@g.OnJ..P....| -00000100 97 80 5a d0 b1 80 5a 50 79 02 6a 41 e5 09 a8 05 |..Z...ZPy.jA....| -00000110 95 27 a0 16 54 9e 80 5a 50 79 02 6a 41 e5 49 4d |.'..T..ZPy.jA.IM| -00000120 ed c7 9f 0f f4 17 ff ff fd 53 74 f4 fd 6b f8 fb |.........St..k..| -00000130 f1 f9 f5 f5 cd aa 0a 8e ee 3b a4 dd 01 b5 20 27 |.........;.... '| -00000140 a9 a9 1d de 09 66 df 12 6a 3f 31 96 5f 7f 3e 18 |.....f..j?1._.>.| -00000150 9e c3 bb e0 e8 a6 e4 9d f4 05 d4 82 5c a5 a6 f6 |............\...| -00000160 73 64 4c 4c ed d7 fb df 77 72 f8 fb 93 56 dd 1f |sdLL....wr...V..| -00000170 15 96 00 b5 20 57 f1 d4 7e 7f a1 cf 8f 0f f4 4e |.... W..~......N| -00000180 68 fc 44 24 32 fe 19 4f e9 ef 5f df 34 11 a0 35 |h.D$2..O.._.4..5| -00000190 f0 41 fa ea 13 7d 0d 1f 24 a0 fe f9 64 09 02 3d |.A...}..$...d..=| -000001a0 3a 1e a4 47 c7 7e 29 a7 7f 06 5a 9f 65 08 ac 1f |:..G.~)...Z.e...| -000001b0 f6 7e 20 03 01 b5 20 13 71 d4 be a3 f7 8f 3f 9f |.~ ... .q.....?.| -000001c0 1f e8 0f c6 15 0d 1f df 5f 7f 87 61 a2 16 91 44 |........_..a...D| -000001d0 e0 9b d5 18 5f 0d 53 34 c5 a5 7f 49 55 76 74 3a |...._.S4...IUvt:| -000001e0 c8 c5 da 91 5a 52 32 75 47 fb a1 87 e8 40 40 2d |....ZR2uG....@@-| -000001f0 c8 44 6b 6a 29 47 38 08 0e 04 a9 01 5f 8b cd 98 |.Dkj)G8....._...| -00000200 91 d7 5f ac c6 f8 ea 73 e4 f2 1b d1 78 fb 31 b6 |.._....s....x.1.| -00000210 9f 0e 1e 50 3b 1e 1a 07 02 6a 41 26 e2 33 84 81 |...P;....jA&.3..| -00000220 9c ad 29 62 df 6c 43 e0 f3 ef 9c 21 10 1e bf 58 |..)b.lC....!...X| -00000230 8d f9 15 e1 f2 e3 8b 9d ea 3f a7 f6 d3 c1 2d b5 |.........?....-.| -00000240 9f 1c b5 63 3f cb 40 40 2d c8 44 1c b5 1f 24 c8 |...c?.@@-.D...$.| -00000250 7e 7d cc d7 57 df ff 1b fe ae 62 ed 27 ab b1 8a |~}..W.....b.'...| -00000260 b5 5f 0c bb 61 98 da cb 62 2d 4f ed d8 cf 3c 10 |._..a...b-O...<.| -00000270 c4 5a 90 91 38 6a 31 b1 38 c7 a4 88 d1 74 13 fd |.Z..8j1.8....t..| +000000b0 0e 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 07 7b |.... .IDATx....{| +000000c0 a4 38 12 86 3d 1e 8f 3d b7 db c4 3b 9c fd a8 ff |.8..=..=...;....| +000000d0 ff af 3c 05 82 00 49 28 07 a8 6f 77 da 6e 50 28 |..<...I(..ow.nP(| +000000e0 95 de 2e 0a 41 e3 87 07 10 08 04 02 81 40 20 10 |....A........@ .| +000000f0 08 04 02 81 ce a2 ef 5c 95 da 31 a0 8c f5 fd 93 |.......\..1.....| +00000100 a7 80 5a 90 5c 40 2d a8 3c 01 b5 a0 f2 04 d4 82 |..Z.\@-.<.......| +00000110 ca 13 50 0b 2a 4f 40 2d a8 3c 01 b5 a0 f2 a4 a6 |..P.*O@-.<......| +00000120 f6 fd f5 1d fd e0 ff df 3e 44 7b df 3e 87 9f f7 |........>D{.>...| +00000130 8f cf cf 2f 56 54 b0 77 6c 05 b1 9f 5f af 4b 71 |.../VT.wl..._.Kq| +00000140 a0 16 64 2f 35 b5 c3 1b a1 f6 4b 42 ed 07 c6 f2 |..d/5.....KB....| +00000150 f3 f5 9d e1 39 bc 09 f6 8e d4 7e cd d4 ce c5 59 |....9.....~....Y| +00000160 91 6d 1d a0 16 a4 23 35 b5 1f 63 9c 14 53 fb f9 |.m....#5..c..S..| +00000170 f6 f3 46 76 7f 7d d0 a2 fb bd 1b 7d bd 2e c5 25 |..Fv.}.....}...%| +00000180 45 80 5a 90 86 78 6a bf 3e d1 c7 fb 3b 7a 23 34 |E.Z..xj.>...;z#4| +00000190 7e 20 1c 08 f1 51 7f cc 10 3e bf e8 91 9d 96 c0 |~ ...Q...>......| +000001a0 3b e9 bb 0f f4 39 bc 93 b8 f9 fa c1 12 04 ba 77 |;....9.........w| +000001b0 dc 49 f7 8e ed 12 f2 df 3e d1 eb eb eb 54 9c b5 |.I......>....T..| +000001c0 43 1b a0 dd fd 8c 1d 02 b5 20 1d 71 d4 be a1 b7 |C........ .q....| +000001d0 f7 d7 8f 77 f4 8a 71 45 c3 fb d7 e7 cf 30 4c d4 |...w..qE.....0L.| +000001e0 22 72 64 ff 62 25 c6 77 c3 14 2a f1 d6 1f 52 94 |"rd.b%.w..*...R.| +000001f0 ed 9d 76 72 81 94 b6 81 01 47 af 63 f1 b1 1d 52 |..vr.....G.c...R| +00000200 84 76 f7 33 75 08 d4 82 74 b4 a6 96 f2 f3 8e 19 |.v.3u...t.......| +00000210 24 07 f1 01 9f 8b cd d4 92 f7 9f ac c4 f8 ee 63 |$..............c| +00000220 e4 f2 0b d1 00 fa 3e d6 9f 76 ae a9 65 49 c4 eb |......>..v..eI..| +00000230 58 7c 6c 87 51 fb fe f3 33 77 08 d4 82 74 c4 67 |X|l.Q...3w...t.g| +00000240 08 03 39 4a d3 44 f6 8b 2d 08 7c fc cc 19 02 e1 |..9J.D..-.|.....| +00000250 f1 93 95 98 df 11 2e df 3f 3f de c7 a2 6c ef b4 |........??...l..| +00000260 73 4d ed eb 17 6b 75 2c ce da 61 d4 b2 e4 64 bb |sM...ku,..a...d.| +00000270 02 01 d4 82 e4 e2 a8 7d 27 41 f6 f3 7d 3e 61 fa |.......}'A..}>a.| 00000280 /usr/share/doc/packages/spf2-apidocs/html/a00137.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00137.html 2023-01-07 18:00:51.543100787 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00137.html 2023-01-07 18:00:51.539100757 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_dns_rr.c File Reference +libspf2: src/libspf2/spf_log_stdio.c File Reference @@ -44,86 +44,74 @@
-
spf_dns_rr.c File Reference
+
spf_log_stdio.c File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
-#include "spf_dns.h"
-#href_anchor"el" href="a00056_source.html">spf_internal.h"
-#include "spf_dns_internal.h"
-#href_anchor"el" href="a00068_source.html">spf_dns_rr.h"
+
#include "spf_sys_config.h"
+#href_anchor"el" href="a00044_source.html">spf.h"
-Include dependency graph for spf_dns_rr.c:
+Include dependency graph for spf_log_stdio.c:
-
- - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + +

Go to the source code of this file.

char * SPF_sanitize (SPF_server_t * spf_server, char ** bufp,
- - - -

-Macros

#href_anchor"memItemRight" valign="bottom">SPF_DNS_RR_REALLOC(d, i, s)
 
- - - - - - - - - - + + + + + + + +

Functions

SPF_dns_rr_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_rr_new_nxdomain (SPF_dns_server_t *spf_dns_server, const char *domain)
 
SPF_dns_rr_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_rr_new_init (SPF_dns_server_t *spf_dns_server, const char *domain, ns_type rr_type, int ttl, SPF_dns_stat_t herrno)
 
SPF_dns_rr_t *&#href_anchor"memItemRight" valign="bottom">SPF_dns_rr_new ()
 
void SPF_dns_rr_free (SPF_dns_rr_t *spfrr)
&#href_anchor"memitem:aa2380951658cb6ba7ddd89a305fec681">SPF_errcode_t SPF_dns_rr_buf_realloc (SPF_dns_rr_t *spfrr, int idx, size_t len)
&#href_anchor"memitem:ac682e0d02010bfd9aaca944d8bc35713">SPF_errcode_t SPF_dns_rr_dup (SPF_dns_rr_t **dstp, SPF_dns_rr_t *src)
&#href_anchor"details" id="details">

Detailed Description

-

Audited, 2008-09-13, Shevek.

- -

Definition in file spf_dns_rr.c.

-

Macro Definition Documentation

- -

◆ SPF_DNS_RR_REALLOC

+
void&#href_anchor"memItemRight" valign="bottom">SPF_error_stdio (const char *file, int line, const char *errmsg)
 
void SPF_warning_stdio (const char *file, int line, const char *errmsg)
 
void SPF_info_stdio (const char *file __attribute__((unused)), int line __attribute__((unused)), const char *errmsg)
 
void SPF_debug_stdio (const char *file, int line, const char *errmsg)
 
+

Detailed Description

+

Audited, 2008-09-13, Shevek. Make sure no file:line combo is >127 bytes long.

+ +

Definition in file spf_log_stdio.c.

+

Function Documentation

+ +

◆ SPF_debug_stdio()

- + - - + + - - + + - - + + @@ -132,37 +120,34 @@
#define SPF_DNS_RR_REALLOCvoid SPF_debug_stdio ( d, const char * file,
 i, int line,
 const char * errmsg 
-Value:
do { \
-
err = SPF_dns_rr_buf_realloc(d, i, s); \
-
if (err) return err; \
-
} while(0)
-
SPF_errcode_t SPF_dns_rr_buf_realloc(SPF_dns_rr_t *spfrr, int idx, size_t len)
Definition: spf_dns_rr.c:134
-
+ +

Definition at line 67 of file spf_log_stdio.c.

+
-

Function Documentation

- -

◆ SPF_dns_rr_buf_realloc()

+ +

◆ SPF_error_stdio()

- + - + + - + - - + + @@ -172,178 +157,69 @@
SPF_errcode_t SPF_dns_rr_buf_realloc void SPF_error_stdio (SPF_dns_rr_t *&#href_anchor"paramname">spfrr, const char * file,
int idx, line,
size_t len const char * errmsg 
-

Definition at line 134 of file spf_dns_rr.c.

- -

References NULL, SPF_dns_rr_t::rr, SPF_dns_rr_t::rr_buf_len, SPF_dns_rr_t::rr_buf_num, SPF_E_NO_MEMORY, and SPF_E_SUCCESS.

+

Definition at line 34 of file spf_log_stdio.c.

/usr/share/doc/packages/spf2-apidocs/html/a00137_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00137_source.html 2023-01-07 18:00:51.567100962 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00137_source.html 2023-01-07 18:00:51.559100904 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_dns_rr.c Source File +libspf2: src/libspf2/spf_log_stdio.c Source File @@ -43,7 +43,7 @@
-
spf_dns_rr.c
+
spf_log_stdio.c
Go to the documentation of this file.
1/*
@@ -52,7 +52,7 @@
4 *
5 * a) The GNU Lesser General Public License as published by the Free
6 * Software Foundation; either version 2.1, or (at your option) any
-
7 * later version,
+
7 * later version,
8 *
9 * OR
10 *
@@ -62,276 +62,68 @@
14 */
15
16
-
17#href_anchor"code" href="a00050.html">spf_sys_config.h"
+
17#href_anchor"code" href="a00053.html">spf_sys_config.h"
18
-
19#ifdef STDC_HEADERS
-
20# include <stdio.h> /* stdin / stdout */
-
21# include <stdlib.h> /* malloc / free */
-
22#endif
-
23
-
24#ifdef HAVE_STRING_H
-
25# include <string.h> /* strstr / strdup */
-
26#else
-
27# ifdef HAVE_STRINGS_H
-
28# include <strings.h> /* strstr / strdup */
-
29# endif
-
30#endif
-
31
-
32#ifdef HAVE_NETDB_H
-
33#include <netdb.h>
-
34#endif
-
35
-
36#ifdef HAVE_ARPA_NAMESER_H
-
37#include <arpa/nameser.h>
-
38#endif
-
39
-
40
-
41#include "spf.h"
-
42#href_anchor"code" href="a00044.html">spf_dns.h"
-
43#include "spf_internal.h"
-
44#href_anchor"code" href="a00041.html">spf_dns_internal.h"
-
45#include "spf_dns_rr.h"
+
19
+
20#ifdef STDC_HEADERS
+
21# include <stdio.h> /* stdin / stdout */
+
22# include <stdlib.h> /* malloc / free */
+
23#endif
+
24
+
25#include "spf.h"
+
26
+
33void
+
34SPF_error_stdio(const char *file, int line, const char *errmsg)
+
35{
+
36 char buf[128];
+
37 if (file) {
+
38 snprintf(buf, sizeof(buf), "%s:%d", file, line);
+
39 fprintf(stderr, "%-20s Error: %s\n", buf, errmsg);
+
40 }
+
41 else {
+
42 fprintf(stderr, "Error: %s\n", errmsg);
+
43 }
+
44 abort();
+
45}
46
- -
53SPF_dns_rr_new_nxdomain(SPF_dns_server_t *spf_dns_server,
-
54 const char *domain)
-
55{
-
56 return SPF_dns_rr_new_init(spf_dns_server,
-
57 domain, ns_t_any, 0, HOST_NOT_FOUND);
+
47void
+
48SPF_warning_stdio(const char *file, int line, const char *errmsg)
+
49{
+
50 char buf[128];
+
51 if (file) {
+
52 snprintf(buf, sizeof(buf), "%s:%d", file, line);
+
53 fprintf(stderr, "%-20s Warning: %s\n", buf, errmsg);
+
54 }
+
55 else {
+
56 fprintf(stderr, "Warning: %s\n", errmsg);
+
57 }
58}
59
- -
61SPF_dns_rr_new_init(SPF_dns_server_t *spf_dns_server,
-
62 const char *domain,
-
63 ns_type rr_type, int ttl,
-
64 SPF_dns_stat_t herrno)
-
65{
-
66 SPF_dns_rr_t *spfrr;
-
67
-
68 spfrr = SPF_dns_rr_new();
-
69 if (spfrr == NULL)
-
70 return spfrr;
-
71
-
72 spfrr->source = spf_dns_server;
-
73 if (domain && (domain[0] != '\0')) {
-
74 spfrr->domain = strdup(domain);
-
75 if (spfrr->domain == NULL) {
-
76 SPF_dns_rr_free(spfrr);
-
77 return NULL;
-
78 }
-
79 spfrr->domain_buf_len = strlen(domain) + 1;
-
80 }
-
81 else {
-
82 spfrr->domain = NULL;
-
83 spfrr->domain_buf_len = 0;
-
84 }
-
85 spfrr->rr_type = rr_type;
-
86 spfrr->ttl = ttl;
-
87 spfrr->herrno = herrno;
-
88
-
89 return spfrr;
-
90}
-
91
- - -
94{
-
95 SPF_dns_rr_t *spfrr;
-
96
-
97 spfrr = malloc(sizeof(SPF_dns_rr_t));
-
98 if (spfrr == NULL)
-
99 return spfrr;
-
100 memset(spfrr, 0, sizeof(SPF_dns_rr_t));
-
101
-
102 spfrr->domain = NULL;
-
103 spfrr->domain_buf_len = 0;
-
104 spfrr->rr_type = ns_t_invalid;
-
105 spfrr->num_rr = 0;
-
106 spfrr->ttl = 0;
-
107 spfrr->utc_ttl = 0;
-
108 spfrr->herrno = HOST_NOT_FOUND;
-
109
-
110 return spfrr;
-
111}
-
112
-
113void
- -
115{
-
116 int i;
-
117
-
118 if (spfrr->domain)
-
119 free(spfrr->domain);
-
120 if (spfrr->rr) {
-
121 for (i = 0; i < spfrr->rr_buf_num; i++)
-
122 if (spfrr->rr[i])
-
123 free(spfrr->rr[i]);
-
124 free(spfrr->rr);
-
125 }
-
126 if (spfrr->rr_buf_len)
-
127 free(spfrr->rr_buf_len);
-
128 if(spfrr->hook)
-
129 free(spfrr->hook);
-
130 free(spfrr);
-
131}
-
132
- -
134SPF_dns_rr_buf_realloc(SPF_dns_rr_t *spfrr, int idx, size_t len)
-
135{
-
136 SPF_dns_rr_data_t **new_data;
-
137 size_t *new_buf_len;
-
138 int new_num;
-
139 void *new_rr;
-
140 int j;
-
141
-
142 if (spfrr->rr_buf_num <= idx) {
-
143 /* allocate lots so we don't have to remalloc often */
-
144 new_num = spfrr->rr_buf_num + (idx + (idx >> 2) + 4 );
-
145
-
146 new_data = realloc(spfrr->rr,
-
147 new_num * sizeof(*new_data));
-
148 if (new_data == NULL)
-
149 return SPF_E_NO_MEMORY;
-
150 spfrr->rr = new_data;
-
151
-
152 new_buf_len = realloc(spfrr->rr_buf_len,
-
153 new_num * sizeof(*new_buf_len));
-
154 if (new_buf_len == NULL)
-
155 return SPF_E_NO_MEMORY;
/usr/share/doc/packages/spf2-apidocs/html/a00138.png differs at offset '20' (PNG image data, 867 x 411, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00138.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00138.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 03 63 00 00 01 9b 08 03 00 00 00 7e b1 b8 |...c.........~..| -00000020 66 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |f...fPLTE......T| +00000010 00 00 03 39 00 00 01 ab 08 03 00 00 00 d4 fd a9 |...9............| +00000020 4a 00 00 00 63 50 4c 54 45 fe ff ff 8c 8c 8c 54 |J...cPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| 00000040 70 e0 e0 e0 8b 8b 8b c3 c3 c3 a7 a7 a7 63 b8 ff |p............c..| 00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| -00000060 7f 7f 63 63 63 31 31 31 53 53 53 5f 5f 5f 39 39 |..ccc111SSS___99| -00000070 39 72 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c |9rrr...&&&...LLL| -00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff db |fff.............| -00000090 55 0e 2a 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |U.*....tRNS.@..f| -000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| -000000b0 01 95 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ed |..+.... .IDATx..| -000000c0 9d 8b 7a a4 ac b6 ae d3 e9 e3 9a d3 f2 b4 f7 32 |..z............2| -000000d0 49 a7 bb 1f eb fe 6f 72 71 d0 12 15 94 c3 40 85 |I.....orq.....@.| -000000e0 fa be f9 cf 74 4a 60 0c 18 f0 16 88 46 5f 5e 20 |....tJ`.....F_^ | -000000f0 08 82 20 08 82 20 08 82 20 08 82 20 08 5a ea ef |.. .. .. .. .Z..| -00000100 b5 75 76 78 20 28 58 7f ff 5d 59 60 0c 4a 5f 60 |.uvx (X..]Y`.J_`| -00000110 0c 82 e2 0a 8c 41 50 5c 81 31 08 8a 2b 30 06 41 |.....AP\.1..+0.A| -00000120 71 05 c6 20 28 ae c0 18 04 c5 d5 36 63 1f 6f 1f |q.. (......6c.o.| -00000130 fd 3f f6 df fb 6f 5d ea fb 67 f7 ef e3 f7 e7 e7 |.?...o]..g......| -00000140 1f 99 55 93 aa e8 cf 32 1d 8c 41 cf a1 6d c6 ba |..U....2..A..m..| -00000150 77 ce d8 1f 03 63 bf 19 44 9f 6f 1f 12 a6 ee 5d |w....c..D.o....]| -00000160 93 0a c6 20 68 9b b1 df 7c 12 63 d2 33 f6 f9 fe |... h...|.c.3...| -00000170 ef 9d 27 ff f9 2d b2 ae 53 c1 18 04 cd 18 fb f3 |..'..-..S.......| -00000180 d9 ff fe f8 e8 df 39 3b bf fb df ef 7c fd 37 ac |......9;....|.7.| -00000190 15 3f ff 88 25 a1 c8 c1 12 c5 a7 df fd 67 f7 c1 |.?..%........g..| -000001a0 27 ab b7 df 72 a9 28 52 87 44 91 3a 1a 7e ff ec |'...r.(R.D.:.~..| -000001b0 df de d8 b2 93 59 7d 1b fd 8c 69 dc df ff 13 3e |.....Y}...i....>| -000001c0 ff 0d 5e c1 18 94 95 14 c6 de fb f7 8f b7 df 1f |..^.............| -000001d0 fd 1b 83 ab ef 3e fe 7c fe eb ba 91 b1 9e 2f 09 |.....>.|....../.| -000001e0 ff c8 1c c3 a7 6e 9c a9 d8 d1 7f 3c ab 4c 1d 13 |.....n.....<.L..| -000001f0 95 79 8c 5b eb d8 61 f6 df c7 e7 98 6f 4a 7c 7b |.y.[..a.....oJ|{| +00000060 7f 7f 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 72 |..111SSS___999rr| +00000070 72 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 66 |r...&&&...LLLfff| +00000080 99 99 99 d3 d3 d3 00 00 00 ff ff ff a0 78 e4 11 |.............x..| +00000090 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 |....tRNS.@..f...| +000000a0 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b |.pHYs..........+| +000000b0 0e 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 09 7b |.... .IDATx....{| +000000c0 a3 3c 96 46 5d a9 54 aa a6 9b 7d 86 ec 79 f0 ff |.<.F].T...}..y..| +000000d0 ff 95 a3 05 6c 01 12 68 43 48 f2 7b fa eb 54 0c |....l..hCH.{..T.| +000000e0 42 ba 88 7b 2c 81 31 b9 5c 00 00 00 00 00 00 00 |B..{,.1.\.......| +000000f0 00 00 00 f2 e2 fb 6c ce ee 00 00 ac f8 fe 39 17 |......l.......9.| +00000100 98 03 d2 04 e6 00 60 03 cc 01 c0 06 98 03 80 0d |......`.........| +00000110 30 07 00 1b 60 0e 00 36 c0 1c 00 6c d8 34 e7 fd |0...`..6...l.4..| +00000120 f5 7d f8 21 ff bd 7d c8 d6 be 7d f6 3f ef 1f 9f |.}.!..}...}.?...| +00000130 9f 5f bc a8 64 ed 58 cb 00 73 40 76 6c 9a d3 bf |._..d.X..s@vl...| +00000140 51 73 be 14 e6 7c 10 35 3e 5f df b9 22 fd 9b 64 |Qs...|.5>_.."..d| +00000150 2d cc 01 d9 b2 69 ce c7 98 f5 72 73 3e df 7e de |-....i....rs>.~.| +00000160 e8 ea af 0f 56 74 bd 16 e6 80 7c 11 cc f9 fa 1c |....Vt....|.....| +00000170 3e de df 87 37 6a c4 c7 f0 f1 46 67 60 e3 6c ed |>...7j....Fg`.l.| +00000180 f3 8b 4d ca 58 09 b2 92 bd fa 18 3e fb 77 3a b0 |..M.X......>.w:.| +00000190 bc 7e f0 c9 1a 5b 3b ae 64 6b 05 73 de f8 6b f2 |.~...[;.dk.s..k.| +000001a0 cf eb eb 17 cc 01 e9 73 37 e7 6d 78 7b 7f fd 78 |.......s7.mx{..x| +000001b0 1f 5e 89 32 43 ff fe f5 f9 d3 f7 93 39 03 9d 94 |.^.2C.......9...| +000001c0 7d f1 12 e3 ab 7e 1a 55 c8 d2 1f 5a 94 af 9d 56 |}....~.U...Z...V| +000001d0 ce c7 9c f7 cf af 77 ba 9e d4 db 0f 30 07 64 c0 |......w.....0.d.| +000001e0 cc 1c 96 e6 ef c4 03 3a f7 ea df 5f df 6f e6 d0 |.......:..._.o..| +000001f0 d7 9f bc c4 f8 ea 63 74 e3 6b 60 e3 ce fb b8 fd |......ct.k`.....| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00140.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00140.html 2023-01-07 18:00:51.595101166 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00140.html 2023-01-07 18:00:51.591101136 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_expand.c File Reference +libspf2: src/libspf2/spf_get_spf.c File Reference @@ -43,135 +43,42 @@
- -
spf_expand.c File Reference
+
spf_get_spf.c File Reference
- -

Expansion routine for SPF macros. -More...

-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
-#include "spf_internal.h"
-#href_anchor"el" href="a00071_source.html">spf_record.h"
+
#href_anchor"el" href="a00053_source.html">spf_sys_config.h"
+#include "spf.h"
+#href_anchor"el" href="a00011_source.html">spf_dns.h"
+#include "spf_internal.h"
+#href_anchor"el" href="a00041_source.html">spf_dns_internal.h"
-Include dependency graph for spf_expand.c:
+Include dependency graph for spf_get_spf.c:
-
- - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + +

Go to the source code of this file.

- - - -

-Functions

SPF_errcode_t SPF_record_expand_data (SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_data_t *data, size_t data_len, char **bufp, size_t *buflenp)
&#href_anchor"details" id="details">

Detailed Description

-

Expansion routine for SPF macros.

- -

Definition in file spf_expand.c.

-

Function Documentation

- -

◆ SPF_record_expand_data()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SPF_errcode_t SPF_record_expand_data (SPF_server_t * spf_server,
SPF_request_t * spf_request,
SPF_response_t * spf_response,
SPF_data_t *&#href_anchor"paramname">data,
size_t data_len,
char ** bufp,
size_t * buflenp 
)
-
-
/usr/share/doc/packages/spf2-apidocs/html/a00140_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00140_source.html 2023-01-07 18:00:51.627101398 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00140_source.html 2023-01-07 18:00:51.615101310 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_expand.c Source File +libspf2: src/libspf2/spf_get_spf.c Source File @@ -43,500 +43,60 @@
-
spf_expand.c
+
spf_get_spf.c
-Go to the documentation of this file.
1/*
+Go to the documentation of this file.
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of either:
-
4 *
+
4 *
5 * a) The GNU Lesser General Public License as published by the Free
6 * Software Foundation; either version 2.1, or (at your option) any
7 * later version,
-
8 *
+
8 *
9 * OR
-
10 *
+
10 *
11 * b) The two-clause BSD license.
12 *
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
21#href_anchor"code" href="a00050.html">spf_sys_config.h"
+
16#href_anchor"code" href="a00053.html">spf_sys_config.h"
+
17
+
18#ifdef STDC_HEADERS
+
19# include <stdio.h> /* stdin / stdout */
+
20# include <stdlib.h> /* malloc / free */
+
21#endif
22
-
23
-
24#ifdef STDC_HEADERS
-
25# include <stdio.h> /* stdin / stdout */
-
26# include <stdlib.h> /* malloc / free */
-
27# include <ctype.h> /* isupper / tolower */
-
28#endif
-
29
-
30#ifdef HAVE_STRING_H
-
31# include <string.h> /* strstr / strdup */
-
32#else
-
33# ifdef HAVE_STRINGS_H
-
34# include <strings.h> /* strstr / strdup */
-
35# endif
-
36#endif
-
37
-
38#if TIME_WITH_SYS_TIME
-
39# include <sys/time.h>
-
40# include <time.h>
-
41#else
-
42# if HAVE_SYS_TIME_H
-
43# include <sys/time.h>
-
44# else
-
45# include <time.h>
-
46# endif
-
47#endif
-
48#ifdef HAVE_STRING_H
-
49#include <string.h>
-
50#endif
-
51
-
52
-
53#include "spf.h"
-
54#href_anchor"code" href="a00056.html">spf_internal.h"
-
55#include "spf_record.h"
-
56
-
57
-
58// #href_anchor"line"> 59
-
60static const char client_ver_ipv4[] = "in-addr";
-
61static const char client_ver_ipv6[] = "ip6";
-
62
-
63
-
64static inline int
-
65SPF_delim_valid(SPF_data_t *d, char c)
-
66{
-
67 return ( ( d->dv.delim_dot && c == '.' )
-
68 || ( d->dv.delim_dash && c == '-' )
-
69 || ( d->dv.delim_plus && c == '+' )
-
70 || ( d->dv.delim_equal && c == '=' )
-
71 || ( d->dv.delim_bar && c == '|' )
-
72 || ( d->dv.delim_under && c == '_' ) );
-
73}
-
74
- -
81SPF_record_expand_data(SPF_server_t *spf_server,
-
82 SPF_request_t *spf_request,
-
83 SPF_response_t *spf_response,
-
84 SPF_data_t *data, size_t data_len,
-
85 char **bufp, size_t *buflenp)
-
86{
-
87 SPF_data_t *d, *data_end;
-
88
-
89 size_t len, label_len;
-
90 const char *p_err; // XXX Check this value, when returned.
-
91 char *p, *p_end;
-
92 const char *p_read;
-
93 const char *p_read_end;
-
94 char *p_write;
-
95 char *p2, *p2_end;
-
96
-
97
-
98 const char *var;
-
99 char *munged_var = NULL;
-
100 char *url_var = NULL;
-
101
-
102 /* Pretty-printing buffers. */
-
103 char ip4_buf[ INET_ADDRSTRLEN ];
-
104 char ip6_buf[ INET6_ADDRSTRLEN ];
-
105 /* Hex buffer for ipv6 (size in nibbles) */
-
106 char ip6_rbuf[ sizeof( struct in6_addr ) * 4 + 1 ];
-
107
-
108 char time_buf[ sizeof( "4294967296" ) ]; /* 2^32 seconds max */
-
109
-
110 int num_found;
-
111 int i;
-
112 size_t buflen;
-
113 int compute_length;
-
114 SPF_errcode_t err;
-
115
-
116
-
117 /*
-
118 * make sure we were passed valid data to work with
-
119 */
-
120 SPF_ASSERT_NOTNULL(spf_server);
-
121 SPF_ASSERT_NOTNULL(data);
-
122 SPF_ASSERT_NOTNULL(bufp);
-
123 SPF_ASSERT_NOTNULL(buflenp);
-
124
-
125 buflen = 1; /* For the terminating '\0' */
-
126 compute_length = 1;
-
127 p = NULL;
-
128 p_end = NULL;
-
129
-
130 /* data_end = SPF_mech_end_data( mech ); */ /* doesn't work for mods */
-
131 data_end = (SPF_data_t *)((char *)data + data_len);
-
132
-
133top:
-
134#href_anchor"line"> 135 fprintf(stderr, "Pass start compute_length=%d\n", compute_length);
-
136#endif
-
137 /*
-
138 * expand the data
-
139 */
-
140 for (d = data; d < data_end; d = SPF_data_next(d)) {
-
141#ifdef DEBUG
-
142 fprintf(stderr, " Item type=%d at %p\n", d->dc.parm_type, d);
-
143#endif
-
144 if (d->dc.parm_type == PARM_CIDR)
-
145 continue;
-
146
-
147 if (d->ds.parm_type == PARM_STRING) {
-
148 if (compute_length) {
-
149 buflen += d->ds.len;
-
150 continue;
-
151 }
-
152 /* This should NEVER happen now. */
-
153 if (p_end - (p + d->ds.len) <= 0)
-
154 SPF_error("Failed to allocate enough memory "
-
155 "to expand string.");
-
156 memcpy(p, SPF_data_str(d), d->ds.len);
-
157 p += d->ds.len;
-
158 continue;
-
159 }
-
160
-
161 /* Otherwise, it's a variable. */
-
162
-
163 var = NULL;
-
164 switch (d->dv.parm_type) {
-
165 case PARM_LP_FROM: /* local-part of envelope-sender */
-
166 var = spf_request->env_from_lp;
-
167 break;
-
168
-
169 case PARM_ENV_FROM: /* envelope-sender */
-
170 var = spf_request->env_from;
-
171 break;
-
172
-
173 case PARM_DP_FROM: /* envelope-domain */
-
174 var = spf_request->env_from_dp;
-
175 break;
-
176
-
177 case PARM_CUR_DOM: /* current-domain */
-
178 var = spf_request->cur_dom;
-
179 break;
-
180
-
181 case PARM_CLIENT_IP: /* SMTP client IP */
-
182 if (compute_length) {
-
183 len = sizeof(ip6_rbuf);
/usr/share/doc/packages/spf2-apidocs/html/a00141.png differs at offset '20' (PNG image data, 823 x 411, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00141.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00141.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 03 37 00 00 01 9b 08 03 00 00 00 ce 4e 9e |...7..........N.| -00000020 54 00 00 00 69 50 4c 54 45 fe ff ff a7 a7 a7 c3 |T...iPLTE.......| -00000030 c3 c3 8b 8b 8b 54 54 54 7a 7a 7a c4 c4 c4 70 70 |.....TTTzzz...pp| -00000040 70 8c 8c 8c 1c 1c 1c a8 a8 a8 38 38 38 e0 e0 e0 |p.........888...| -00000050 63 b8 ff 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f |c...........???.| -00000060 1f 1f 7f 7f 7f 74 74 74 31 31 31 53 53 53 5f 5f |.....ttt111SSS__| -00000070 5f 39 39 39 72 72 72 85 85 85 26 26 26 13 13 13 |_999rrr...&&&...| -00000080 4c 4c 4c 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff |LLLfff..........| -00000090 ff ff 64 2b 90 94 00 00 00 01 74 52 4e 53 00 40 |..d+......tRNS.@| -000000a0 e6 d8 66 00 00 00 09 70 48 59 73 00 00 0e c4 00 |..f....pHYs.....| -000000b0 00 0e c4 01 95 2b 0e 1b 00 00 20 00 49 44 41 54 |.....+.... .IDAT| -000000c0 78 9c ed 9d 87 9a ab b8 96 46 dd 3d 75 2b 93 67 |x........F.=u+.g| -000000d0 86 8a e7 7c f8 fd 1f f2 2a 90 91 40 19 01 ff ea |...|....*..@....| -000000e0 3e 55 65 50 d8 48 5a 96 c0 d8 be dd 00 00 00 00 |>UeP.HZ.........| -000000f0 00 00 00 00 00 00 c0 29 f8 73 04 f6 6e 24 00 66 |.......).s..n$.f| -00000100 fc f9 1b 3f f0 06 c4 06 bc 01 40 1f 78 03 80 3e |...?......@.x..>| -00000110 f0 06 00 7d e0 0d 00 fa c0 1b 00 f4 81 37 00 e8 |...}.........7..| -00000120 b3 ee cd d7 c7 57 f3 97 fc ff f9 2d da fb f9 53 |.....W.....-...S| -00000130 ff fd fa fe f9 f9 e5 49 05 7b 35 f9 9d 97 01 6f |.......I.{5....o| -00000140 40 9c ac 7b 53 7f 52 6f 7e 25 de 7c 13 31 7e 3e |@..{S.Ro~%.|.1~>| -00000150 be b8 20 f5 a7 60 2f bc 01 e7 64 dd 9b 6f 3a d9 |.. ..`/...d..o:.| -00000160 10 c4 de fc 7c fe fd a4 bb 7f bf 59 d2 e5 5e 5d |....|......Y..^]| -00000170 e0 0d 38 08 63 6f 7e 7f 9a ef af af e6 93 fa f0 |..8.co~.........| -00000180 dd 7c 7f d2 b5 57 bb 4e fb f9 65 cb 31 96 82 ec |.|...W.N..e.1...| -00000190 64 8f be 9b 9f fa 8b 4e 2a 1f df 7c 99 c6 f6 b6 |d......N*..|....| -000001a0 3b d9 de ae e0 2f 52 5a 4d 0a 21 b3 d2 4f 97 9b |;..../RZM.!..O..| -000001b0 56 41 7e 91 ea be 1b aa cb e7 4f f3 f1 c1 bd e1 |VA~.......O.....| -000001c0 95 c3 1b 10 2f 23 6f 3e 9b cf af 8f ef af e6 83 |..../#o>........| -000001d0 08 d3 d4 5f bf 3f 7f eb ba f3 a6 a1 cb b1 5f 9e |..._.?........_.| -000001e0 a2 7d 54 77 33 0a d9 fa 97 26 e5 7b bb 9d e3 f9 |.}Tw3....&.{....| -000001f0 e6 e7 f7 8b ca f8 f1 f1 c5 a6 28 9e a0 21 1b 49 |..........(..!.I| +00000010 00 00 03 b1 00 00 01 ab 08 03 00 00 00 21 2f e0 |.............!/.| +00000020 bf 00 00 00 63 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....cPLTE......T| +00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| +00000040 70 e0 e0 e0 8b 8b 8b c3 c3 c3 a7 a7 a7 63 b8 ff |p............c..| +00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| +00000060 7f 7f 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 72 |..111SSS___999rr| +00000070 72 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 66 |r...&&&...LLLfff| +00000080 99 99 99 d3 d3 d3 00 00 00 ff ff ff a0 78 e4 11 |.............x..| +00000090 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 |....tRNS.@..f...| +000000a0 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b |.pHYs..........+| +000000b0 0e 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 89 7a |.... .IDATx....z| +000000c0 db 3a 92 46 1d 67 9d 6e 89 db 0c 13 c7 76 3e ea |.:.F.g.n.....v>.| +000000d0 fd 9f 72 00 70 df b1 14 80 02 f5 9f be ed 58 dc |..r.p.........X.| +000000e0 50 00 ea 08 20 45 ca 2f 2f 00 00 00 00 00 00 00 |P... E.//.......| +000000f0 00 00 00 00 80 67 e0 33 36 b1 1b 00 80 a4 f8 fc |.....g.36.......| +00000100 17 17 18 0b 80 09 30 16 80 94 80 b1 00 a4 04 8c |......0.........| +00000110 05 20 25 60 2c 00 29 01 63 01 48 09 18 0b 40 4a |. %`,.).c.H...@J| +00000120 1c 1a fb f6 fb ad f9 27 fe fb f3 77 6b ed 9f f7 |.......'...wk...| +00000130 fa df db df f7 f7 8f 76 d3 8d b5 30 16 00 62 0e |.......v...0..b.| +00000140 8d ad ff 48 63 3f 76 8c fd 2b 94 7c ff fd d6 aa |...Hc?v..+.|....| +00000150 59 ff d9 58 bb cd df e9 a6 30 16 00 13 0e 8d fd |Y..X.....0......| +00000160 2b 07 58 c1 b6 b1 ef 7f fe fd 91 ab 3f fe aa 4d |+.X.........?..M| +00000170 d7 6b 77 78 87 b1 00 d8 32 31 f6 e3 bd f9 fb f6 |.kwx....21......| +00000180 d6 fc 91 26 fe 6d c4 48 28 66 ba dd ac f8 fd 43 |...&.m.H(f.....C| +00000190 4d 7e d5 16 62 a5 7a f5 b7 79 af df e4 40 fa fb |M~..b.z..y...@..| +000001a0 6f 3b 29 56 6b bb 95 6a 6d 7f 60 71 b4 df bf 3f |o;)Vk..jm.`q...?| +000001b0 c4 0c ba 91 03 ef 74 0d 8c 05 c0 8c d1 d8 3f cd |......t.......?.| +000001c0 9f b7 df 7f df 9a df 42 d5 a6 7e fb 78 ff 57 d7 |.......B..~.x.W.| +000001d0 bd b1 8d 9c fc 7e b4 5b 74 af ea 7e ac 14 4b ff |.....~.[t..~..K.| +000001e0 c9 4d db b5 fd ca c9 48 2a 8f 56 37 1f ff de 3f |.M.....H*.V7...?| +000001f0 de e4 bb 01 c6 58 00 ec 99 19 ab f4 7a 13 fe c9 |.....X......z...| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00143.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00143.html 2023-01-07 18:00:51.663101660 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00143.html 2023-01-07 18:00:51.651101573 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_server.c File Reference +libspf2: src/libspf2/spf_dns_windns.c File Reference @@ -43,582 +43,15 @@
- -
spf_server.c File Reference
+
spf_dns_windns.c File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
-#include "spf_response.h"
-#href_anchor"el" href="a00071_source.html">spf_record.h"
-#include "spf_server.h"
-#href_anchor"el" href="a00044_source.html">spf_dns.h"
-#include "spf_dns_resolv.h"
-#href_anchor"el" href="a00038_source.html">spf_dns_cache.h"
-#include "spf_dns_zone.h"
-#href_anchor"el" href="a00056_source.html">spf_internal.h"
-#include "spf_dns_internal.h"
-
-Include dependency graph for spf_server.c:
-
-
- - - - - - - - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

- - - - - - -

-Macros

#href_anchor"memItemRight" valign="bottom">HOST_NAME_MAX   255
 
#define SPF_ACCESS_INT(f)
 
- - - - - - - - - - - - - - - - - - - - - - - - - -

-Functions

 __attribute__ ((warn_unused_result))
 
SPF_server_t * SPF_server_new (SPF_server_dnstype_t dnstype, int debug)
 
SPF_server_t * SPF_server_new_dns (SPF_dns_server_t *dns, int debug)
 
void SPF_server_free (SPF_server_t *sp)
 
SPF_errcode_t SPF_server_set_rec_dom (SPF_server_t *sp, const char *dom)
 
SPF_errcode_t SPF_server_set_sanitize (SPF_server_t *sp, int sanitize)
 
SPF_errcode_t SPF_server_set_explanation (SPF_server_t *sp, const char *exp, SPF_response_t **spf_responsep)
 
SPF_errcode_t SPF_server_set_localpolicy (SPF_server_t *sp, const char *policy, int use_default_whitelist, SPF_response_t **spf_responsep)
 
SPF_errcode_t SPF_server_get_record (SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t **spf_recordp)
 
 SPF_ACCESS_INT (max_dns_mech)
 
 SPF_ACCESS_INT (max_dns_ptr)
 
 SPF_ACCESS_INT (max_dns_mx)
 
-

Macro Definition Documentation

- -

◆ HOST_NAME_MAX

- -
-
- - - - -
#define HOST_NAME_MAX   255
-
- -

Definition at line 50 of file spf_server.c.

- -
-
- -

◆ SPF_ACCESS_INT

- -
-
- - - - - - - - -
#define SPF_ACCESS_INT( f)
-
-Value:
SPF_errcode_t SPF_server_set_ ## f(SPF_server_t *s, int n) { \
-
s->f = n; return SPF_E_SUCCESS; \
-
} \
-
int SPF_server_get_ ## f(SPF_server_t *s) { \
-
return s->f; \
-
}
-
SPF_errcode_t
Definition: spf_response.h:119
-
@ SPF_E_SUCCESS
Definition: spf_response.h:120
-

Various accessors.

-

The user is permitted to override the maximums.

- -

Definition at line 504 of file spf_server.c.

- -
-
-

Function Documentation

- -

◆ __attribute__()

- -
-
- - - - - - - - -
__attribute__ ((warn_unused_result) )
-
- -

Definition at line 66 of file spf_server.c.

- -

References HOST_NAME_MAX, SPF_E_INTERNAL_ERROR, SPF_E_NO_MEMORY, and SPF_E_SUCCESS.

- -
-
- -

◆ SPF_ACCESS_INT() [1/3]

- -
-
- - - - - - - - -
SPF_ACCESS_INT (max_dns_mech )
-
-

The return values from these getter functions are used without modification. If you set a value higher than the specified maximum, it will be used. Beware.

- -
-
- -

◆ SPF_ACCESS_INT() [2/3]

- -
-
- - - - - - - - -
SPF_ACCESS_INT (max_dns_mx )
-
- /usr/share/doc/packages/spf2-apidocs/html/a00143_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00143_source.html 2023-01-07 18:00:51.691101862 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00143_source.html 2023-01-07 18:00:51.691101862 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_server.c Source File +libspf2: src/libspf2/spf_dns_windns.c Source File @@ -43,591 +43,561 @@
-
spf_server.c
+
spf_dns_windns.c
-Go to the documentation of this file.
1/*
+Go to the documentation of this file.
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of either:
-
4 *
+
4 *
5 * a) The GNU Lesser General Public License as published by the Free
6 * Software Foundation; either version 2.1, or (at your option) any
-
7 * later version,
-
8 *
+
7 * later version,
+
8 *
9 * OR
-
10 *
+
10 *
11 * b) The two-clause BSD license.
12 *
13 * These licenses can be found with the distribution in the file LICENSES
14 */
15
-
16#href_anchor"code" href="a00050.html">spf_sys_config.h"
-
17
-
18
-
19#ifdef STDC_HEADERS
-
20# include <stdio.h> /* stdin / stdout */
-
21# include <stdlib.h> /* malloc / free */
-
22# include <ctype.h> /* isupper / tolower */
-
23#endif
-
24
-
25#ifdef HAVE_INTTYPES_H
-
26#include <inttypes.h>
+
16#href_anchor"line"> 17
+
18#include "spf_sys_config.h"
+
19
+
20#href_anchor"line"> 21#include <errno.h>
+
22#endif
+
23
+
24#ifdef STDC_HEADERS
+
25# include <stdio.h> /* stdin / stdout */
+
26# include <stdlib.h> /* malloc / free */
27#endif
28
-
29#ifdef HAVE_NETDB_H
-
30#include <netdb.h>
-
31#endif
-
32
-
33#ifdef HAVE_UNISTD_H
-
34#include <unistd.h>
-
35#endif
+
29#ifdef HAVE_STRING_H
+
30# include <string.h> /* strstr / strdup */
+
31#else
+
32# ifdef HAVE_STRINGS_H
+
33# include <strings.h> /* strstr / strdup */
+
34# endif
+
35#endif
36
-
37#ifdef HAVE_STRING_H
-
38# include <string.h> /* strstr / strdup */
-
39#else
-
40# ifdef HAVE_STRINGS_H
-
41# include <strings.h> /* strstr / strdup */
-
42# endif
-
43#endif
+
37#include "spf.h"
+
38#href_anchor"code" href="a00011.html">spf_dns.h"
+
39#include "spf_internal.h"
+
40#href_anchor"code" href="a00041.html">spf_dns_internal.h"
+
41#include "spf_dns_windns.h"
+
42#href_anchor"line"> 43#include <windns.h>
44
-
45#ifdef HAVE_NETDB_H
-
46# include <netdb.h>
-
47#endif
-
48
-
49#ifndef HOST_NAME_MAX
-
50#define HOST_NAME_MAX 255
-
51#endif
+
45
+
46typedef struct
+
47{
+
48 int debug;
+
49 SPF_dns_rr_t spfrr;
+
50} SPF_dns_windns_config_t;
+
51
52
-
53
-
54#include "spf.h"
-
55#href_anchor"code" href="a00026.html">spf_response.h"
-
56#include "spf_record.h"
-
57#href_anchor"code" href="a00032.html">spf_server.h"
-
58#include "spf_dns.h"
-
59#href_anchor"code" href="a00053.html">spf_dns_resolv.h"
-
60#include "spf_dns_cache.h"
-
61#href_anchor"code" href="a00065.html">spf_dns_zone.h"
-
62#include "spf_internal.h"
-
63#href_anchor"code" href="a00041.html">spf_dns_internal.h"
-
64
+
53#href_anchor"line"> 54
+
55
+
56static inline SPF_dns_windns_config_t *SPF_voidp2spfhook( void *hook )
+
57 { return (SPF_dns_windns_config_t *)hook; }
+
58static inline void *SPF_spfhook2voidp( SPF_dns_windns_config_t *spfhook )
+
59 { return (void *)spfhook; }
+
60
+
61
+
62LPSTR SPF_dns_create_error_message_windns(DWORD last_error)
+
63{
+
64 LPSTR error_message;
65
-
66__attribute__((warn_unused_result))
-
67static SPF_errcode_t
-
68SPF_server_set_rec_dom_ghbn(SPF_server_t *sp)
-
69{
-
70 sp->rec_dom = malloc(HOST_NAME_MAX);
-
71 if (! sp->rec_dom)
-
72 return SPF_E_NO_MEMORY;
-
73#ifdef _WIN32
-
74 gethostnameFQDN(sp->rec_dom, HOST_NAME_MAX);
-
75 return 0; /* XXX FIXME? */
-
76#else
-
77 if (gethostname(sp->rec_dom, HOST_NAME_MAX) < 0)
-
78 /* XXX Error using strerror. */
- -
80#endif
-
81 return SPF_E_SUCCESS;
-
82}
+
66 if (!FormatMessageA(
+
67 (FORMAT_MESSAGE_ALLOCATE_BUFFER |
+
68 FORMAT_MESSAGE_FROM_SYSTEM |
+
69 FORMAT_MESSAGE_IGNORE_INSERTS),
+
70 NULL,
+
71 last_error,
+
72 MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
+
73 (LPSTR) &error_message,
+
74 0,
+
75 NULL))
+
76 {
+
77 return NULL;
+
78 }
+
79
+
80 return error_message;
+
81}
+
82
83
-
84static void
-
85SPF_server_new_common_pre(SPF_server_t *sp, int debug)
-
86{
-
87 SPF_errcode_t err;
+
84void SPF_dns_destroy_error_message_windns(LPSTR error_message)
+
85{
+
86 LocalFree( error_message );
+
87}
88
-
89 memset(sp, 0, sizeof(SPF_server_t));
-
90
-
91 sp->max_dns_mech = SPF_MAX_DNS_MECH;
-
92 sp->max_dns_ptr = SPF_MAX_DNS_PTR;
-
93 sp->max_dns_mx = SPF_MAX_DNS_MX;
-
94 sp->debug = debug;
-
95
-
96 err = SPF_server_set_rec_dom_ghbn(sp);
-
97 if (err != SPF_E_SUCCESS)
-
98 SPF_error("Failed to set rec_dom using gethostname()");
-
99}
-
100
-
101static void
-
102SPF_server_new_common_post(SPF_server_t *sp)
-
103{
-
104 SPF_response_t *spf_response;
-
105 SPF_errcode_t err;
-
106
-
107 spf_response = NULL;
- -
109 &spf_response);
-
110 if (err != SPF_E_SUCCESS)
-
111 SPF_errorf("Error code %d compiling default explanation", err);
-
112 if (spf_response) {
-
113 /* XXX Print the errors?! */
-
114 if (SPF_response_messages(spf_response) > 0)
-
115 SPF_error("Response errors compiling default explanation");
/usr/share/doc/packages/spf2-apidocs/html/a00146.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00146.html 2023-01-07 18:00:51.711102007 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00146.html 2023-01-07 18:00:51.719102065 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_record.c File Reference +libspf2: src/spfquery/spfquery.c File Reference @@ -39,220 +39,368 @@
-
spf_record.c File Reference
+
spfquery.c File Reference
-
#include "spf_sys_config.h"
-#href_anchor"el" href="a00017_source.html">spf.h"
-#include "spf_internal.h"
-#href_anchor"el" href="a00071_source.html">spf_record.h"
+
#include <getopt.h>
+#include "spf.h"
+#href_anchor"el" href="a00011_source.html">spf_dns.h"
+#include "spf_dns_null.h"
+#href_anchor"el" href="a00047_source.html">spf_dns_test.h"
+#include "spf_dns_cache.h"
+#href_anchor"el" href="a00038_source.html">spf_dns_resolv.h"
-Include dependency graph for spf_record.c:
+Include dependency graph for spfquery.c:
-
- - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + +

Go to the source code of this file.

+ + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct &#href_anchor"memItemRight" valign="bottom">SPF_client_options_t
&#href_anchor"memitem:">struct  SPF_client_request_t
&#href_anchor"memberdecls">

Macros

#href_anchor"memItemRight" valign="bottom">SPF_MSGSIZE   4096
 
#define SPF_TEST_VERSION   "3.0"
 
#define _GNU_SOURCE
 
#define TRUE   1
 
#define FALSE   0
 
#define FREE(x, f)   do { if ((x)) (f)((x)); (x) = NULL; } while(0)
 
#define FREE_REQUEST(x)   FREE((x), SPF_request_free)
 
#define FREE_RESPONSE(x)   FREE((x), SPF_response_free)
 
#define CONTINUE_ERROR   do { res = 255; continue; } while(0)
 
#define WARN_ERROR   do { res = 255; } while(0)
 
#define FAIL_ERROR   do { res = 255; goto error; } while(0)
 
#define RESIZE_RESULT(n)
 
#define APPEND_RESULT(n)
 
#define X_OR_EMPTY(x)   ((x) ? (x) : "")
 
- - - - - - - - + +

Functions

SPF_record_t * SPF_record_new (SPF_server_t *spf_server, const char *text)
 
void SPF_record_free (SPF_record_t *rp)
 
void SPF_macro_free (SPF_macro_t *mac)
 
SPF_errcode_t SPF_record_find_mod_value (SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t *spf_record, const char *mod_name, char **bufp, size_t *buflenp)
 
int main (int argc, char *argv[])
 

Macro Definition Documentation

- -

◆ SPF_MSGSIZE

+ +

◆ _GNU_SOURCE

- +
#define SPF_MSGSIZE   4096#define _GNU_SOURCE
-

Definition at line 44 of file spf_record.c.

+

Definition at line 89 of file spfquery.c.

-

Function Documentation

- -

◆ SPF_macro_free()

+ +

◆ APPEND_RESULT

- + - - + +
void SPF_macro_free #define APPEND_RESULT (SPF_macro_t * mac) n)
+Value:
do { \
+
partial_result = SPF_strresult(n); \
+
RESIZE_RESULT(strlen(partial_result)); \
+
strcat(result, partial_result); \
+
} while(0)
+
const char * SPF_strresult(SPF_result_t result)
Definition: spf_utils.c:81
+
+

Definition at line 131 of file spfquery.c.

+ +
+
+ +

◆ CONTINUE_ERROR

-

Definition at line 73 of file spf_record.c.

+
+
+ + + + +
#define CONTINUE_ERROR   do { res = 255; continue; } while(0)
+
-

Referenced by SPF_request_get_exp(), SPF_server_free(), and SPF_server_set_explanation().

+

Definition at line 116 of file spfquery.c.

Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00146_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00146_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00146_source.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00146_source.html 2023-01-07 18:00:51.743102240 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00146_source.html 2023-01-07 18:00:51.763102386 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_record.c Source File +libspf2: src/spfquery/spfquery.c Source File @@ -39,181 +39,790 @@
-
spf_record.c
+
spfquery.c
-Go to the documentation of this file.
1/*
-
2 * This program is free software; you can redistribute it and/or modify
-
3 * it under the terms of either:
-
4 *
-
5 * a) The GNU Lesser General Public License as published by the Free
-
6 * Software Foundation; either version 2.1, or (at your option) any
-
7 * later version,
-
8 *
-
9 * OR
-
10 *
-
11 * b) The two-clause BSD license.
+Go to the documentation of this file.
1/*
+
2 * spfquery - Sender Policy Framwork command line utility
+
3 *
+
4 * Author: Wayne Schlitt <wayne@midwestcs.com>
+
5 *
+
6 * File: spfquery.c
+
7 * Desc: SPF command line utility
+
8 *
+
9 *
+
10 * This program is free software; you can redistribute it and/or modify
+
11 * it under the terms of either:
12 *
-
13 * These licenses can be found with the distribution in the file LICENSES
-
14 */
-
15
-
16#href_anchor"code" href="a00050.html">spf_sys_config.h"
-
17
-
18
-
19#ifdef STDC_HEADERS
-
20# include <stdio.h> /* stdin / stdout */
-
21# include <stdlib.h> /* malloc / free */
-
22# include <ctype.h> /* isupper / tolower */
-
23#endif
-
24
-
25#ifdef HAVE_INTTYPES_H
-
26#include <inttypes.h>
-
27#endif
-
28
-
29#ifdef HAVE_STRING_H
-
30# include <string.h> /* strstr / strdup */
-
31#else
-
32# ifdef HAVE_STRINGS_H
-
33# include <strings.h> /* strstr / strdup */
-
34# endif
-
35#endif
-
36
-
37
-
38
-
39#include "spf.h"
-
40#href_anchor"code" href="a00056.html">spf_internal.h"
-
41#include "spf_record.h"
-
42
-
43
-
44#define SPF_MSGSIZE 4096
-
45
+
13 * a) The GNU Lesser General Public License as published by the Free
+
14 * Software Foundation; either version 2.1, or (at your option) any
+
15 * later version,
+
16 *
+
17 * OR
+
18 *
+
19 * b) The two-clause BSD license.
+
20 *
+
21 *
+
22 * The two-clause BSD license:
+
23 *
+
24 *
+
25 * Redistribution and use in source and binary forms, with or without
+
26 * modification, are permitted provided that the following conditions
+
27 * are met:
+
28 *
+
29 * 1. Redistributions of source code must retain the above copyright
+
30 * notice, this list of conditions and the following disclaimer.
+
31 * 2. Redistributions in binary form must reproduce the above copyright
+
32 * notice, this list of conditions and the following disclaimer in the
+
33 * documentation and/or other materials provided with the distribution.
+
34 *
+
35 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS&#href_anchor"line"> 36 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+
37 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+
38 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+
39 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+
40 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+
41 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+
42 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+
43 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+
44 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
45 */
46
-
47SPF_record_t *
-
48SPF_record_new(SPF_server_t *spf_server, const char *text)
-
49{
-
50 SPF_record_t *rp;
-
51
-
52 rp = (SPF_record_t *)malloc(sizeof(SPF_record_t));
-
53 if (!rp)
-
54 return rp;
-
55 memset(rp, 0, sizeof(SPF_record_t));
-
56
-
57 rp->spf_server = spf_server;
-
58
-
59 return rp;
-
60}
+
47#define SPF_TEST_VERSION "3.0"
+
48
+
49#ifdef HAVE_CONFIG_H
+
50# include "config.h"
+
51#endif
+
52
+
53#ifdef STDC_HEADERS
+
54# include <stdio.h>
+
55# include <stdlib.h> /* malloc / free */
+
56#endif
+
57
+
58#ifdef HAVE_SYS_TYPES_H
+
59#include <sys/types.h> /* types (u_char .. etc..) */
+
60#endif
61
-
62void
-
63SPF_record_free(SPF_record_t *rp)
-
64{
-
65 if (rp->mech_first)
-
66 free(rp->mech_first);
-
67 if (rp->mod_first)
-
68 free(rp->mod_first);
-
69 free(rp);
-
70}
-
71
-
72void
-
73SPF_macro_free(SPF_macro_t *mac)
-
74{
-
75 free(mac);
-
76}
-
77
-
78/* This expects datap and datalenp NOT to be initialised. */
-
79static SPF_errcode_t
-
80SPF_record_find_mod_data(
-
81 SPF_record_t *spf_record,
-
82 const char *mod_name,
-
83 SPF_data_t **datap, size_t *datalenp)
-
84{
-
85 SPF_mod_t *mod;
-
86 size_t name_len;
-
87 int i;
+
62#ifdef HAVE_INTTYPES_H
+
63#include <inttypes.h>
+
64#endif
+
65
+
66#ifdef HAVE_STRING_H
+
67# include <string.h> /* strstr / strdup */
+
68#else
+
69# ifdef HAVE_STRINGS_H
+
70# include <strings.h> /* strstr / strdup */
+
71# endif
+
72#endif
+
73
+
74#ifdef HAVE_SYS_SOCKET_H
+
75# include <sys/socket.h> /* inet_ functions / structs */
+
76#endif
+
77#ifdef HAVE_NETINET_IN_H
+
78# include <netinet/in.h> /* inet_ functions / structs */
+
79#endif
+
80
+
81#ifdef HAVE_ARPA_NAMESER_H
+
82# include <arpa/nameser.h> /* DNS HEADER struct */
+
83#endif
+
84
+
85#ifdef HAVE_ARPA_INET_H
+
86# include <arpa/inet.h> /* in_addr struct */
+
87#endif
88
-
89 name_len = strlen( mod_name );
-
90
-
91 /*
-
92 * make sure we were passed valid data to work with
-
93 */
/usr/share/doc/packages/spf2-apidocs/html/a00147.png differs at offset '19' (PNG image data, 823 x 411, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00147.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00147.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 03 37 00 00 01 9b 08 03 00 00 00 ce 4e 9e |...7..........N.| -00000020 54 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |T...fPLTE......T| -00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| -00000040 70 e0 e0 e0 a7 a7 a7 c3 c3 c3 8b 8b 8b 63 b8 ff |p............c..| -00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| -00000060 7f 7f 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 |..ttt111SSS___99| +00000010 00 00 04 4a 00 00 01 9b 08 03 00 00 00 e4 c2 85 |...J............| +00000020 ff 00 00 00 66 50 4c 54 45 fe ff ff c3 c3 c3 8b |....fPLTE.......| +00000030 8b 8b a7 a7 a7 9f 9f 9f bf bf bf df df df 3f 3f |..............??| +00000040 3f 1f 1f 1f 7f 7f 7f 63 b8 ff 1c 1c 1c 8c 8c 8c |?......c........| +00000050 c4 c4 c4 70 70 70 54 54 54 38 38 38 a8 a8 a8 e0 |...pppTTT888....| +00000060 e0 e0 2a 2a 2a 31 31 31 53 53 53 5f 5f 5f 39 39 |..***111SSS___99| 00000070 39 72 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c |9rrr...&&&...LLL| -00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff a6 |fff.............| -00000090 fc eb 02 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.......tRNS.@..f| +00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff 3f |fff............?| +00000090 5e e7 63 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |^.c....tRNS.@..f| 000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| 000000b0 01 95 2b 0e 1b 00 00 20 00 49 44 41 54 78 9c ed |..+.... .IDATx..| -000000c0 9d 09 9b a3 ac ba ae ab ab c7 b5 b6 f3 d9 db ae |................| -000000d0 a1 bb 2f f3 ff ff e4 61 d0 38 81 32 0b f8 dc df |../....a.8.2....| -000000e0 d7 55 15 41 78 05 ee 80 c6 24 2f 2f 00 00 00 00 |.U.Ax....$//....| -000000f0 00 00 00 00 00 00 00 e8 f1 37 6e ae 6e 1e 00 84 |.........7n.n...| -00000100 fc fd 17 33 f0 06 c4 09 bc 01 40 1f 78 03 80 3e |...3......@.x..>| -00000110 f0 06 00 7d e0 0d 00 fa c0 1b 00 f4 81 37 00 e8 |...}.........7..| -00000120 73 e8 cd fb ef f7 e1 1f f9 ff ed 43 94 fa f6 d9 |s..........C....| -00000130 ff 7b ff f8 fc fc c3 b3 0a 52 95 f9 b3 dd 1b de |.{.......R......| -00000140 80 a8 39 f4 a6 7f a3 de fc 91 78 f3 41 c4 f8 fc |..9.......x.A...| -00000150 fd ce 05 e9 df 04 a9 f0 06 64 ca a1 37 1f 74 b2 |.........d..7.t.| -00000160 21 88 bd f9 7c fb f7 46 93 ff 7c b0 ac fb 54 78 |!...|..F..|...Tx| -00000170 03 72 65 e1 cd 9f cf e1 e3 fd 7d 78 a3 3e 7c 0c |.re.......}x.>|.| -00000180 1f 6f 74 ed 35 ae d3 3e ff b0 e5 18 cb 41 12 d9 |.ot.5..>.....A..| -00000190 a3 8f e1 b3 7f a7 93 ca ef 0f be 4c 63 a9 63 22 |...........Lc.c"| -000001a0 4b 1d cb 65 45 be 93 12 7b a6 20 2d f9 8d 27 b3 |K..eE...{. -..'.| -000001b0 94 b7 cf e1 f7 6f ee 0d 4f 84 37 20 7a 66 6f de |.....o..O.7 zfo.| -000001c0 86 b7 f7 df 1f ef c3 6f 22 cc d0 bf ff f9 fc d7 |.......o".......| -000001d0 f7 93 37 03 5d 8e fd e1 39 c6 47 fd 34 a3 90 ad |..7.]...9.G.4...| -000001e0 ff 68 56 9e 3a 25 2e e6 1b 56 e4 e7 9f 77 2a 24 |.hV.:%...V...w*$| -000001f0 2f f9 9d 3e 1a de 58 0a dd d2 0f bf 79 46 56 2d |/..>..X.....yFV-| +000000c0 9d 89 76 a3 3a 97 46 f3 77 33 67 4e 77 93 4a 52 |..v.:.F.w3gNw.JR| +000000d0 95 85 df ff 25 5b 88 c1 0c 02 34 1c 09 49 7c 7b |....%[....4..I|{| +000000e0 dd 9b b2 01 89 83 86 6d 09 b0 79 78 00 00 00 00 |.......m..yx....| +000000f0 00 00 00 00 00 00 00 00 00 00 80 47 fc f3 9c b3 |...........G....| +00000100 cb 07 00 20 c5 bf 5f af 81 4a 00 08 03 a8 04 00 |... .._..J......| +00000110 40 00 54 02 00 20 00 2a 01 00 10 00 95 00 00 08 |@.T.. .*........| +00000120 80 4a 00 00 04 40 25 00 00 02 f6 55 f2 f5 b9 58 |.J...@%....U...X| +00000130 f0 e7 a7 96 31 80 6e ba 15 50 09 00 61 b0 af 92 |....1.n..P..a...| +00000140 fa cf 62 c1 b7 9c 11 74 d3 ad 80 4a 00 08 83 7d |..b....t...J...}| +00000150 95 7c 2f 17 fc 2c 1d 41 9b 6e 05 54 02 40 18 4c |.|/..,.A.n.T.@.L| +00000160 55 f2 f7 a7 f9 fe fa 6a fe b0 7e ff e7 bb f9 fe |U......j..~.....| +00000170 c3 e7 29 7c 21 7b ff f7 e7 e7 ef ef 77 c3 26 2a |..)|!{......w.&*| +00000180 ed ba cf cf df af 86 25 f9 ac 7f bf d8 5b f6 b7 |.......%.....[..| +00000190 4d f6 d9 ce 6b 9a af 7b ba 3e d9 34 dd 3c 19 4f |M...k..{.>.4.<.O| +000001a0 f7 3f 7d 32 46 b7 5f a8 04 80 d0 98 a8 e4 4f f3 |.?}2F._.......O.| +000001b0 e7 eb f3 fb ab f9 64 0e 69 ea af bf 3f bf 75 dd |......d.i...?.u.| +000001c0 2f 64 ff 7c 7e b5 e7 3b 7e ba 75 75 73 57 c9 cf |/d.|~..;~.uusW..| +000001d0 5f b6 e6 0f 4f f6 e7 87 cd 6d da ff 87 74 43 b2 |_...O....m...tC.| +000001e0 49 ba 79 b2 df 36 dd 90 ec 77 d8 2f 54 02 40 68 |I.y..6...w./T.@h| +000001f0 cc 55 c2 7b 33 1b 1e d4 ed 0c a5 fe fa fc ea 17 |.U.{3...........| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00149.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00149.html 2023-01-07 18:00:51.787102560 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00149.html 2023-01-07 18:00:51.791102590 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_get_spf.c File Reference +libspf2: src/spf_example/spf_example.c File Reference @@ -39,46 +39,157 @@
-
spf_get_spf.c File Reference
+ +
spf_example.c File Reference
-
#href_anchor"el" href="a00050_source.html">spf_sys_config.h"
-#include "spf.h"
-#href_anchor"el" href="a00044_source.html">spf_dns.h"
-#include "spf_internal.h"
-#href_anchor"el" href="a00041_source.html">spf_dns_internal.h"
+
#include "spf.h"
-Include dependency graph for spf_get_spf.c:
+Include dependency graph for spf_example.c:
-
- - - - - - - - - - - - - - - - +
+ + + + + + + + + + + +

Go to the source code of this file.

+ + + + +

+Macros

#href_anchor"memItemRight" valign="bottom">VALID_STR(x)   (x ? x : "")
 
+ + + +

+Functions

int main (int argc, char *argv[])
 
+

Macro Definition Documentation

+ +

◆ VALID_STR

+ +
+
+ + + + + + + + +
#define VALID_STR( x)   (x ? x : "")
+
+ +
+
+

Function Documentation

+ +

◆ main()

+ +
Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00149_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png Missing in old package: /usr/share/doc/packages/spf2-apidocs/html/a00149_a0ddf1224851353fc92bfbff6f499fa97_cgraph.png /usr/share/doc/packages/spf2-apidocs/html/a00149_source.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00149_source.html 2023-01-07 18:00:51.811102734 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00149_source.html 2023-01-07 18:00:51.819102793 +0000 @@ -5,7 +5,7 @@ -libspf2: src/libspf2/spf_get_spf.c Source File +libspf2: src/spf_example/spf_example.c Source File @@ -39,64 +39,418 @@
-
spf_get_spf.c
+
spf_example.c
-Go to the documentation of this file.
1/*
-
2 * This program is free software; you can redistribute it and/or modify
-
3 * it under the terms of either:
-
4 *
-
5 * a) The GNU Lesser General Public License as published by the Free
-
6 * Software Foundation; either version 2.1, or (at your option) any
-
7 * later version,
-
8 *
-
9 * OR
-
10 *
-
11 * b) The two-clause BSD license.
-
12 *
-
13 * These licenses can be found with the distribution in the file LICENSES
-
14 */
-
15
-
16#href_anchor"code" href="a00050.html">spf_sys_config.h"
-
17
-
18#ifdef STDC_HEADERS
-
19# include <stdio.h> /* stdin / stdout */
-
20# include <stdlib.h> /* malloc / free */
-
21#endif
+Go to the documentation of this file.
1/*
+
2 * spf_example - An example program for how to use libspf2
+
3 *
+
4 * Author: Wayne Schlitt <wayne@midwestcs.com>
+
5 *
+
6 * File: spfquery.c
+
7 * Desc: SPF command line utility
+
8 *
+
9 *
+
10 * This program is in the public domain, there is no copyright, you
+
11 * can do anything you want with it.
+
12 */
+
13
+
14
+
15/*
+
16 * The libspf2 library uses the GNU autoconf system to help make
+
17 * the library more portable. The config.h file should have the
+
18 * HAVE_xxx defines that are appropriate for your system. Either use
+
19 * autconf to create it, or create it by hand.
+
20 */
+
21
22
-
23#ifdef HAVE_NETDB_H
-
24#include <netdb.h>
+
23#href_anchor"line"> 24# include "config.h"
25#endif
26
-
27#ifdef HAVE_STRING_H
-
28# include <string.h> /* strstr / strdup */
-
29#else
-
30# ifdef HAVE_STRINGS_H
-
31# include <strings.h> /* strstr / strdup */
-
32# endif
-
33#endif
-
34
+
27#ifdef STDC_HEADERS
+
28# include <stdio.h>
+
29# include <stdlib.h> /* malloc / free */
+
30#endif
+
31
+
32#ifdef HAVE_SYS_TYPES_H
+
33#include <sys/types.h> /* types (u_char .. etc..) */
+
34#endif
35
-
36
-
37#include "spf.h"
-
38#href_anchor"code" href="a00044.html">spf_dns.h"
-
39#include "spf_internal.h"
-
40#href_anchor"code" href="a00041.html">spf_dns_internal.h"
-
41
-
42/* domain == spf_request->cur_dom */
- - - - - +
36#ifdef HAVE_INTTYPES_H
+
37#include <inttypes.h>
+
38#endif
+
39
+
40#ifdef HAVE_STRING_H
+
41# include <string.h> /* strstr / strdup */
+
42#else
+
43# ifdef HAVE_STRINGS_H
+
44# include <strings.h> /* strstr / strdup */
+
45# endif
+
46#endif
+
47
+
48#ifdef HAVE_SYS_SOCKET_H
+
49# include <sys/socket.h> /* inet_ functions / structs */
+
50#endif
+
51#ifdef HAVE_NETINET_IN_H
+
52# include <netinet/in.h> /* inet_ functions / structs */
+
53#endif
+
54#ifdef HAVE_ARPA_INET_H
+
55# include <arpa/inet.h> /* in_addr struct */
+
56#endif
+
57
+
58#ifdef HAVE_ARPA_NAMESER_H
+
59# include <arpa/nameser.h> /* DNS HEADER struct */
+
60#endif
+
61
+
62#ifdef HAVE_UNISTD_H
+
63#include <unistd.h>
+
64#endif
+
65
+
66#ifdef HAVE_GETOPT_H
+
67#include <getopt.h>
+
68#endif
+
69
+
70
+
71
+
72/*
+
73 * libspf2 public include files that are needed for this example
+
74 * program
+
75 */
+
76
+
77#include "spf.h"
+
78
+
79
+
80/*
+
81 * usage() just prints out the command line options for this program
+
82 */
+
83static void usage()
+
84{
+
85 fprintf(
+
86 stderr,
+
87 "Usage:\n"
+
88 "\n"
+
89 "spf_example [options]\n"
+
90 "\n"
+
91 "Valid data options are:\n"
+
92 " -i <IP address> The IP address that is sending email\n"
+
93 " -s <email address> The email address used as the\n"
+
94 " envelope-from. If no username (local\n"
+
95 " part) is given, &#href_anchor"line"> 96 " assumed.\n"
+
97 " -r <email address> [optional] The email address used as\n"
+
98 " the envelope-to email address, for\n"
+
99 " secondary-MX checking.\n"
+
100 " -h <domain name> The domain name given on the SMTP HELO\n"
+
101 " command. This is only needed if the\n"
+
102 " -sender option is not given.\n"
+
103 " -d [debug level] debug level.\n"
+
104 );
+
105}
+
106
+
107
+
108
+
109/*
+
110 * All the code is in the main routine, but most usages of libspf2
+
111 * would have the code spread around into various subrotines.
+
112 */
+
113
+
114int main( int argc, char *argv[] )
+
115{
+
116 int c;
+
117 int res = 0;
+
118 int i;
+
119
+
120 char *opt_ip = NULL;
+
121 char *opt_sender = NULL;
+
122 char *opt_helo = NULL;
+
123 char *opt_rcpt_to = NULL;
+
124 int opt_debug = 0;
+
125
+
126 /* You should not indirect on any of these structures, as their
+
127 * layout may change between versions of the library. Use the
+
128 * accessor functions instead. Definitions of the structs may not
+
129 * even be provided. */
+
130
+
131 SPF_server_t *spf_server = NULL;
+
132 SPF_request_t *spf_request = NULL;
+
133 SPF_response_t *spf_response = NULL;
+
134 SPF_response_t *spf_response_2mx = NULL;
+
135
/usr/share/doc/packages/spf2-apidocs/html/a00150.png differs at offset '19' (PNG image data, 945 x 427, 8-bit colormap, non-interlaced) --- old /usr/share/doc/packages/spf2-apidocs/html/a00150.png (hex) +++ new /usr/share/doc/packages/spf2-apidocs/html/a00150.png (hex) @@ -1,33 +1,33 @@ 00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR| -00000010 00 00 03 b1 00 00 01 ab 08 03 00 00 00 21 2f e0 |.............!/.| -00000020 bf 00 00 00 63 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....cPLTE......T| +00000010 00 00 02 93 00 00 01 ab 08 03 00 00 00 ab 09 ec |................| +00000020 92 00 00 00 66 50 4c 54 45 fe ff ff 8c 8c 8c 54 |....fPLTE......T| 00000030 54 54 a8 a8 a8 c4 c4 c4 38 38 38 1c 1c 1c 70 70 |TT......888...pp| -00000040 70 e0 e0 e0 8b 8b 8b c3 c3 c3 a7 a7 a7 63 b8 ff |p............c..| +00000040 70 e0 e0 e0 a7 a7 a7 c3 c3 c3 8b 8b 8b 63 b8 ff |p............c..| 00000050 9f 9f 9f bf bf bf df df df 3f 3f 3f 1f 1f 1f 7f |.........???....| -00000060 7f 7f 31 31 31 53 53 53 5f 5f 5f 39 39 39 72 72 |..111SSS___999rr| -00000070 72 85 85 85 26 26 26 13 13 13 4c 4c 4c 66 66 66 |r...&&&...LLLfff| -00000080 99 99 99 d3 d3 d3 00 00 00 ff ff ff a0 78 e4 11 |.............x..| -00000090 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 00 00 00 |....tRNS.@..f...| -000000a0 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 2b |.pHYs..........+| -000000b0 0e 1b 00 00 20 00 49 44 41 54 78 9c ed 9d 89 7a |.... .IDATx....z| -000000c0 db 3a 92 46 1d 67 9d 6e 89 db 0c 13 c7 76 3e ea |.:.F.g.n.....v>.| -000000d0 fd 9f 72 00 70 df b1 14 80 02 f5 9f be ed 58 dc |..r.p.........X.| -000000e0 50 00 ea 08 20 45 ca 2f 2f 00 00 00 00 00 00 00 |P... E.//.......| -000000f0 00 00 00 00 80 67 e0 33 36 b1 1b 00 80 a4 f8 fc |.....g.36.......| -00000100 17 17 18 0b 80 09 30 16 80 94 80 b1 00 a4 04 8c |......0.........| -00000110 05 20 25 60 2c 00 29 01 63 01 48 09 18 0b 40 4a |. %`,.).c.H...@J| -00000120 1c 1a fb f6 fb ad f9 27 fe fb f3 77 6b ed 9f f7 |.......'...wk...| -00000130 fa df db df f7 f7 8f 76 d3 8d b5 30 16 00 62 0e |.......v...0..b.| -00000140 8d ad ff 48 63 3f 76 8c fd 2b 94 7c ff fd d6 aa |...Hc?v..+.|....| -00000150 59 ff d9 58 bb cd df e9 a6 30 16 00 13 0e 8d fd |Y..X.....0......| -00000160 2b 07 58 c1 b6 b1 ef 7f fe fd 91 ab 3f fe aa 4d |+.X.........?..M| -00000170 d7 6b 77 78 87 b1 00 d8 32 31 f6 e3 bd f9 fb f6 |.kwx....21......| -00000180 d6 fc 91 26 fe 6d c4 48 28 66 ba dd ac f8 fd 43 |...&.m.H(f.....C| -00000190 4d 7e d5 16 62 a5 7a f5 b7 79 af df e4 40 fa fb |M~..b.z..y...@..| -000001a0 6f 3b 29 56 6b bb 95 6a 6d 7f 60 71 b4 df bf 3f |o;)Vk..jm.`q...?| -000001b0 c4 0c ba 91 03 ef 74 0d 8c 05 c0 8c d1 d8 3f cd |......t.......?.| -000001c0 9f b7 df 7f df 9a df 42 d5 a6 7e fb 78 ff 57 d7 |.......B..~.x.W.| -000001d0 bd b1 8d 9c fc 7e b4 5b 74 af ea 7e ac 14 4b ff |.....~.[t..~..K.| -000001e0 c9 4d db b5 fd ca c9 48 2a 8f 56 37 1f ff de 3f |.M.....H*.V7...?| -000001f0 de e4 bb 01 c6 58 00 ec 99 19 ab f4 7a 13 fe c9 |.....X......z...| +00000060 7f 7f 74 74 74 31 31 31 53 53 53 5f 5f 5f 39 39 |..ttt111SSS___99| +00000070 39 72 72 72 85 85 85 26 26 26 13 13 13 4c 4c 4c |9rrr...&&&...LLL| +00000080 66 66 66 99 99 99 d3 d3 d3 00 00 00 ff ff ff a6 |fff.............| +00000090 fc eb 02 00 00 00 01 74 52 4e 53 00 40 e6 d8 66 |.......tRNS.@..f| +000000a0 00 00 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 |....pHYs........| +000000b0 01 95 2b 0e 1b 00 00 1c 0e 49 44 41 54 78 9c ed |..+......IDATx..| +000000c0 9d 8b 76 9b 30 97 46 db 34 4d 3a 33 dc 67 86 34 |..v.0.F.4M:3.g.4| +000000d0 cd 65 e1 f7 7f c9 5f 08 6c 73 93 38 ba 1f c3 b7 |.e...._.ls.8....| +000000e0 57 97 13 0b 21 e4 a3 dd 23 81 89 fd e3 07 00 00 |W...!...#.......| +000000f0 00 00 00 00 00 80 c7 e5 8b 11 a9 63 01 78 f0 f5 |...........c.x..| +00000100 cd 06 38 09 24 70 12 70 03 4e 02 6e c0 49 c0 0d |..8.$p.p.N.n.I..| +00000110 38 09 b8 01 27 01 37 e0 24 e0 86 de c9 f7 b7 45 |8...'.7.$......E| +00000120 c1 df 8f d6 d0 b4 f7 8e da 1c 9c 04 12 bd 93 ed |................| +00000130 df 45 c1 3f 53 25 67 4e ea 9b 83 93 40 a2 77 f2 |.E.?S%gN....@.w.| +00000140 df b2 e0 63 69 95 91 93 fa e6 e0 24 90 4c 9d fc |...ci......$.L..| +00000150 fc e8 fe bd bf 77 7f 85 29 7f ff 75 ff fe ca b9 |.....w..)..u....| +00000160 56 16 8a e7 9f 1f 1f 9f df ff ba c9 64 fb 2e ea |V...........d...| +00000170 b4 62 fa 15 f9 ef a3 df 41 6c 7f ef da 8f 8f b6 |.b......Al......| +00000180 fd e8 3e bf af bb f4 4e 0e 35 77 9a 83 93 60 60 |..>....N.5w...``| +00000190 e2 e4 df ee ef fb db bf f7 ee ed 6f ef d6 fb e7 |...........o....| +000001a0 c7 77 db 8e 85 e2 c7 db 7b bf f8 9b 26 b6 8f cf |.w......{...&...| +000001b0 f7 5e df b7 b7 77 f1 d8 89 27 a2 aa a8 d6 76 6f |.^...w...'....vo| +000001c0 df 6d f7 7e dd a5 77 72 ac a9 6f 0e 4e 82 81 b9 |.m.~..wr..o.N...| +000001d0 93 72 ae 7d 17 89 af 9f 65 db f7 b7 f7 b1 50 fc |.r.}....e.....P.| +000001e0 f8 96 a5 13 89 fa 04 f9 fd 29 2a 7e fc 13 59 51 |.........)*~..YQ| +000001f0 ec 24 d4 94 3b f7 7b 48 27 e5 2e c2 c9 6b 4d 6d |.$..;.{H'....kMm| 00000200 /usr/share/doc/packages/spf2-apidocs/html/a00158.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00158.html 2023-01-07 18:00:51.843102966 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00158.html 2023-01-07 18:00:51.843102966 +0000 @@ -45,7 +45,7 @@
-

#include <spf_dns.h>

+

#include <spf_dns.h>

Collaboration diagram for SPF_dns_server_t:
@@ -59,15 +59,15 @@ - + - + - + - + - + @@ -80,7 +80,7 @@

Data Fields

SPF_dns_destroy_t destroy
SPF_dns_destroy_t destroy
 
SPF_dns_lookup_t lookup
SPF_dns_lookup_t lookup
 
SPF_dns_get_spf_t get_spf
SPF_dns_get_spf_t get_spf
 
SPF_dns_get_exp_t get_exp
SPF_dns_get_exp_t get_exp
 
SPF_dns_add_cache_t add_cache
SPF_dns_add_cache_t add_cache
 
SPF_dns_server_t * layer_below
 

Detailed Description

-

Definition at line 135 of file spf_dns.h.

+

Definition at line 135 of file spf_dns.h.

Field Documentation

◆ add_cache

@@ -89,12 +89,12 @@
- +
SPF_dns_add_cache_t SPF_dns_server_t::add_cacheSPF_dns_add_cache_t SPF_dns_server_t::add_cache
-

Definition at line 147 of file spf_dns.h.

+

Definition at line 147 of file spf_dns.h.

@@ -110,7 +110,7 @@
-

Definition at line 153 of file spf_dns.h.

+

Definition at line 153 of file spf_dns.h.

@@ -121,13 +121,13 @@
- +
SPF_dns_destroy_t SPF_dns_server_t::destroySPF_dns_destroy_t SPF_dns_server_t::destroy
-

The destructor for this SPF_dns_server_t. If this is NULL, then the structure is assumed to be shared between multiple SPF_server_t objects, and is not freed when the server is destroyed, or by any call to SPF_dns_free(). In this case, it is assumed that somebody else knows, and will free the resolver at the appropriate object.

+

The destructor for this SPF_dns_server_t. If this is NULL, then the structure is assumed to be shared between multiple SPF_server_t objects, and is not freed when the server is destroyed, or by any call to SPF_dns_free(). In this case, it is assumed that somebody else knows, and will free the resolver at the appropriate object.

-

Definition at line 142 of file spf_dns.h.

+

Definition at line 142 of file spf_dns.h.

@@ -138,12 +138,12 @@
- +
SPF_dns_get_exp_t SPF_dns_server_t::get_expSPF_dns_get_exp_t SPF_dns_server_t::get_exp
-

Definition at line 146 of file spf_dns.h.

+

Definition at line 146 of file spf_dns.h.

@@ -154,12 +154,12 @@
- +
SPF_dns_get_spf_t SPF_dns_server_t::get_spfSPF_dns_get_spf_t SPF_dns_server_t::get_spf
-

Definition at line 145 of file spf_dns.h.

+

Definition at line 145 of file spf_dns.h.

@@ -175,7 +175,7 @@
-

Definition at line 154 of file spf_dns.h.

+

Definition at line 154 of file spf_dns.h.

@@ -191,7 +191,7 @@
-

Definition at line 150 of file spf_dns.h.

+

Definition at line 150 of file spf_dns.h.

@@ -202,12 +202,12 @@
- +
SPF_dns_lookup_t SPF_dns_server_t::lookupSPF_dns_lookup_t SPF_dns_server_t::lookup
-

Definition at line 144 of file spf_dns.h.

+

Definition at line 144 of file spf_dns.h.

@@ -223,12 +223,12 @@
-

Definition at line 152 of file spf_dns.h.

+

Definition at line 152 of file spf_dns.h.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00162.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00162.html 2023-01-07 18:00:51.859103082 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00162.html 2023-01-07 18:00:51.859103082 +0000 @@ -45,7 +45,7 @@
-

#include <spf_dns_rr.h>

+

#include <spf_dns_rr.h>

@@ -64,7 +64,7 @@

Data from a DNS RR.

The strings in this union are usually malloc'ed larger than the size of the union. Only create pointers to it!

-

Definition at line 30 of file spf_dns_rr.h.

+

Definition at line 30 of file spf_dns_rr.h.

Field Documentation

◆ a

@@ -78,9 +78,9 @@

Data Fields

-

Definition at line 33 of file spf_dns_rr.h.

+

Definition at line 33 of file spf_dns_rr.h.

-

Referenced by SPF_dns_get_client_dom(), SPF_dns_rr_dup(), SPF_dns_zone_add_str(), and SPF_record_interpret().

+

Referenced by SPF_dns_get_client_dom(), SPF_dns_rr_dup(), SPF_dns_zone_add_str(), and SPF_record_interpret().

@@ -96,9 +96,9 @@
-

Definition at line 37 of file spf_dns_rr.h.

+

Definition at line 37 of file spf_dns_rr.h.

-

Referenced by SPF_dns_get_client_dom(), SPF_dns_rr_dup(), SPF_dns_zone_add_str(), and SPF_record_interpret().

+

Referenced by SPF_dns_get_client_dom(), SPF_dns_rr_dup(), SPF_dns_zone_add_str(), and SPF_record_interpret().

@@ -114,9 +114,9 @@
-

Definition at line 35 of file spf_dns_rr.h.

+

Definition at line 35 of file spf_dns_rr.h.

-

Referenced by SPF_dns_rr_dup(), SPF_dns_zone_add_str(), and SPF_record_interpret().

+

Referenced by SPF_dns_rr_dup(), SPF_dns_zone_add_str(), and SPF_record_interpret().

@@ -132,9 +132,9 @@
-

Definition at line 34 of file spf_dns_rr.h.

+

Definition at line 34 of file spf_dns_rr.h.

-

Referenced by SPF_dns_get_client_dom(), SPF_dns_rr_dup(), SPF_dns_zone_add_str(), and SPF_record_interpret().

+

Referenced by SPF_dns_get_client_dom(), SPF_dns_rr_dup(), SPF_dns_zone_add_str(), and SPF_record_interpret().

@@ -150,14 +150,14 @@
-

Definition at line 36 of file spf_dns_rr.h.

+

Definition at line 36 of file spf_dns_rr.h.

-

Referenced by main(), SPF_dns_rr_dup(), SPF_dns_zone_add_str(), SPF_request_get_exp(), and SPF_server_get_record().

+

Referenced by main(), SPF_dns_rr_dup(), SPF_dns_zone_add_str(), SPF_request_get_exp(), and SPF_server_get_record().


The documentation for this union was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00166.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/a00166.html 2023-01-07 18:00:51.879103228 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00166.html 2023-01-07 18:00:51.879103228 +0000 @@ -45,7 +45,7 @@
-

#include <spf_dns_rr.h>

+

#include <spf_dns_rr.h>

Collaboration diagram for SPF_dns_rr_t:
@@ -62,7 +62,7 @@   size_t domain_buf_len   -ns_type rr_type +ns_type rr_type   int num_rr   @@ -76,7 +76,7 @@   time_t utc_ttl   -SPF_dns_stat_t herrno +SPF_dns_stat_t herrno   void * hook   @@ -86,9 +86,9 @@

Detailed Description

A DNS packet.

This structure does not semantically match the DNS packet structure. It assumes that only one RR type was of interest, and that all RRs in the packet are of that type.

-

This is also used in spf_dns_zone.c

+

This is also used in spf_dns_zone.c

-

Definition at line 49 of file spf_dns_rr.h.

+

Definition at line 49 of file spf_dns_rr.h.

Field Documentation

◆ domain

@@ -104,9 +104,9 @@

FQDN queried for.

-

Definition at line 53 of file spf_dns_rr.h.

+

Definition at line 53 of file spf_dns_rr.h.

-

Referenced by SPF_dns_rr_dup(), SPF_dns_rr_free(), SPF_dns_rr_new(), and SPF_dns_rr_new_init().

+

Referenced by SPF_dns_rr_dup(), SPF_dns_rr_free(), SPF_dns_rr_new(), and SPF_dns_rr_new_init().

@@ -123,9 +123,9 @@

Alloced size of domain.

-

Definition at line 54 of file spf_dns_rr.h.

+

Definition at line 54 of file spf_dns_rr.h.

-

Referenced by SPF_dns_rr_new(), and SPF_dns_rr_new_init().

+

Referenced by SPF_dns_rr_new(), and SPF_dns_rr_new_init().

@@ -136,16 +136,16 @@
- +
SPF_dns_stat_t SPF_dns_rr_t::herrnoSPF_dns_stat_t SPF_dns_rr_t::herrno

h_error returned from query.

-

Definition at line 66 of file spf_dns_rr.h.

+

Definition at line 66 of file spf_dns_rr.h.

-

Referenced by main(), SPF_dns_rr_dup(), SPF_dns_rr_new(), SPF_dns_rr_new_init(), SPF_record_interpret(), SPF_request_get_exp(), and SPF_server_get_record().

+

Referenced by main(), SPF_dns_rr_dup(), SPF_dns_rr_new(), SPF_dns_rr_new_init(), SPF_record_interpret(), SPF_request_get_exp(), and SPF_server_get_record().

@@ -163,9 +163,9 @@

Used by DNS layers.

-

Definition at line 69 of file spf_dns_rr.h.

+

Definition at line 69 of file spf_dns_rr.h.

-

Referenced by SPF_dns_rr_free().

+

Referenced by SPF_dns_rr_free().

@@ -183,9 +183,9 @@

Number of RR returned in RR.

-

Definition at line 59 of file spf_dns_rr.h.

+

Definition at line 59 of file spf_dns_rr.h.

-

Referenced by SPF_dns_get_client_dom(), SPF_dns_rr_dup(), SPF_dns_rr_new(), SPF_dns_zone_add_str(), SPF_record_interpret(), SPF_request_get_exp(), and SPF_server_get_record().

+

Referenced by SPF_dns_get_client_dom(), SPF_dns_rr_dup(), SPF_dns_rr_new(), SPF_dns_zone_add_str(), SPF_record_interpret(), SPF_request_get_exp(), and SPF_server_get_record().

@@ -203,9 +203,9 @@

RR set returned.

-

Definition at line 60 of file spf_dns_rr.h.

+

Definition at line 60 of file spf_dns_rr.h.

-

Referenced by main(), SPF_dns_get_client_dom(), SPF_dns_rr_buf_realloc(), SPF_dns_rr_dup(), SPF_dns_rr_free(), SPF_dns_zone_add_str(), SPF_record_interpret(), SPF_request_get_exp(), and SPF_server_get_record().

+

Referenced by main(), SPF_dns_get_client_dom(), SPF_dns_rr_buf_realloc(), SPF_dns_rr_dup(), SPF_dns_rr_free(), SPF_dns_zone_add_str(), SPF_record_interpret(), SPF_request_get_exp(), and SPF_server_get_record().

@@ -223,9 +223,9 @@

Alloced size of each RR.

-

Definition at line 61 of file spf_dns_rr.h.

+

Definition at line 61 of file spf_dns_rr.h.

-

Referenced by SPF_dns_rr_buf_realloc(), and SPF_dns_rr_free().

+

Referenced by SPF_dns_rr_buf_realloc(), and SPF_dns_rr_free().

@@ -242,9 +242,9 @@

Number of RR allocated.

-

Definition at line 62 of file spf_dns_rr.h.

+

Definition at line 62 of file spf_dns_rr.h.

-

Referenced by SPF_dns_rr_buf_realloc(), and SPF_dns_rr_free().

+

Referenced by SPF_dns_rr_buf_realloc(), and SPF_dns_rr_free().

@@ -255,15 +255,15 @@
- +
ns_type SPF_dns_rr_t::rr_typens_type SPF_dns_rr_t::rr_type

Type of RR queried for.

-

Definition at line 56 of file spf_dns_rr.h.

+

Definition at line 56 of file spf_dns_rr.h.

-

Referenced by SPF_dns_rr_dup(), SPF_dns_rr_new(), SPF_dns_rr_new_init(), and SPF_record_interpret().

+

Referenced by SPF_dns_rr_dup(), SPF_dns_rr_new(), SPF_dns_rr_new_init(), and SPF_record_interpret().

@@ -281,9 +281,9 @@

Which layer created this RR.

-

Definition at line 70 of file spf_dns_rr.h.

+

Definition at line 70 of file spf_dns_rr.h.

-

Referenced by SPF_dns_rr_dup(), and SPF_dns_rr_new_init().

+

Referenced by SPF_dns_rr_dup(), and SPF_dns_rr_new_init().

@@ -301,9 +301,9 @@

Raw TTL.

-

Definition at line 64 of file spf_dns_rr.h.

+

Definition at line 64 of file spf_dns_rr.h.

-

Referenced by SPF_dns_rr_dup(), SPF_dns_rr_new(), and SPF_dns_rr_new_init().

+

Referenced by SPF_dns_rr_dup(), SPF_dns_rr_new(), and SPF_dns_rr_new_init().

@@ -321,14 +321,14 @@

TTL adjusted to UTC.

-

Definition at line 65 of file spf_dns_rr.h.

+

Definition at line 65 of file spf_dns_rr.h.

-

Referenced by SPF_dns_rr_dup(), and SPF_dns_rr_new().

+

Referenced by SPF_dns_rr_dup(), and SPF_dns_rr_new().

/usr/share/doc/packages/spf2-apidocs/html/a00170.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00170.html 2023-01-07 18:00:51.895103345 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00170.html 2023-01-07 18:00:51.895103345 +0000 @@ -45,7 +45,7 @@
-

#include <spf_record.h>

+

#include <spf_record.h>

@@ -60,7 +60,7 @@

Data Fields

Detailed Description

-

Definition at line 103 of file spf_record.h.

+

Definition at line 103 of file spf_record.h.

Field Documentation

◆ __unused0

@@ -74,7 +74,7 @@
-

Definition at line 108 of file spf_record.h.

+

Definition at line 108 of file spf_record.h.

@@ -90,7 +90,7 @@
-

Definition at line 109 of file spf_record.h.

+

Definition at line 109 of file spf_record.h.

@@ -106,9 +106,9 @@
-

Definition at line 107 of file spf_record.h.

+

Definition at line 107 of file spf_record.h.

-

Referenced by SPF_record_expand_data().

+

Referenced by SPF_record_expand_data().

@@ -124,14 +124,14 @@
-

Definition at line 106 of file spf_record.h.

+

Definition at line 106 of file spf_record.h.

-

Referenced by SPF_record_expand_data().

+

Referenced by SPF_record_expand_data().


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00174.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00174.html 2023-01-07 18:00:51.911103461 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00174.html 2023-01-07 18:00:51.911103461 +0000 @@ -45,7 +45,7 @@
-

#include <spf_record.h>

+

#include <spf_record.h>

@@ -72,7 +72,7 @@

Data Fields

Detailed Description

-

Definition at line 114 of file spf_record.h.

+

Definition at line 114 of file spf_record.h.

Field Documentation

◆ delim_bar

@@ -88,7 +88,7 @@

delimiter char: |

-

Definition at line 125 of file spf_record.h.

+

Definition at line 125 of file spf_record.h.

@@ -106,7 +106,7 @@

delimiter char: -

-

Definition at line 122 of file spf_record.h.

+

Definition at line 122 of file spf_record.h.

@@ -124,7 +124,7 @@

delimiter char: .

-

Definition at line 121 of file spf_record.h.

+

Definition at line 121 of file spf_record.h.

@@ -142,7 +142,7 @@

delimiter char: =

-

Definition at line 124 of file spf_record.h.

+

Definition at line 124 of file spf_record.h.

@@ -160,7 +160,7 @@

delimiter char: +

-

Definition at line 123 of file spf_record.h.

+

Definition at line 123 of file spf_record.h.

@@ -178,7 +178,7 @@

delimiter char: _

-

Definition at line 126 of file spf_record.h.

+

Definition at line 126 of file spf_record.h.

@@ -196,9 +196,9 @@

chop subdomain name

-

Definition at line 118 of file spf_record.h.

+

Definition at line 118 of file spf_record.h.

-

Referenced by SPF_record_expand_data().

+

Referenced by SPF_record_expand_data().

@@ -214,9 +214,9 @@
-

Definition at line 117 of file spf_record.h.

+

Definition at line 117 of file spf_record.h.

-

Referenced by SPF_record_expand_data().

+

Referenced by SPF_record_expand_data().

@@ -234,9 +234,9 @@

reverse

-

Definition at line 119 of file spf_record.h.

+

Definition at line 119 of file spf_record.h.

-

Referenced by SPF_record_expand_data().

+

Referenced by SPF_record_expand_data().

@@ -254,14 +254,14 @@

do URL encoding

-

Definition at line 120 of file spf_record.h.

+

Definition at line 120 of file spf_record.h.

-

Referenced by SPF_record_expand_data().

+

Referenced by SPF_record_expand_data().


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00178.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00178.html 2023-01-07 18:00:51.931103606 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00178.html 2023-01-07 18:00:51.931103606 +0000 @@ -45,7 +45,7 @@
-

#include <spf_record.h>

+

#include <spf_record.h>

@@ -60,7 +60,7 @@

Data Fields

Detailed Description

-

Definition at line 129 of file spf_record.h.

+

Definition at line 129 of file spf_record.h.

Field Documentation

◆ __unused0

@@ -74,7 +74,7 @@
-

Definition at line 135 of file spf_record.h.

+

Definition at line 135 of file spf_record.h.

@@ -90,7 +90,7 @@
-

Definition at line 133 of file spf_record.h.

+

Definition at line 133 of file spf_record.h.

@@ -106,7 +106,7 @@
-

Definition at line 134 of file spf_record.h.

+

Definition at line 134 of file spf_record.h.

@@ -122,14 +122,14 @@
-

Definition at line 132 of file spf_record.h.

+

Definition at line 132 of file spf_record.h.

-

Referenced by SPF_record_expand_data(), and SPF_record_stringify().

+

Referenced by SPF_record_expand_data(), and SPF_record_stringify().


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00182.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00182.html 2023-01-07 18:00:51.947103721 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00182.html 2023-01-07 18:00:51.947103721 +0000 @@ -45,7 +45,7 @@
-

#include <spf_record.h>

+

#include <spf_record.h>

Collaboration diagram for SPF_data_t:
@@ -69,7 +69,7 @@

Detailed Description

-

Definition at line 140 of file spf_record.h.

+

Definition at line 140 of file spf_record.h.

Field Documentation

◆ dc

@@ -83,9 +83,9 @@
-

Definition at line 145 of file spf_record.h.

+

Definition at line 145 of file spf_record.h.

-

Referenced by SPF_record_expand_data(), and SPF_record_stringify().

+

Referenced by SPF_record_expand_data(), and SPF_record_stringify().

@@ -101,9 +101,9 @@
-

Definition at line 144 of file spf_record.h.

+

Definition at line 144 of file spf_record.h.

-

Referenced by SPF_record_expand_data().

+

Referenced by SPF_record_expand_data().

@@ -119,14 +119,14 @@
-

Definition at line 143 of file spf_record.h.

+

Definition at line 143 of file spf_record.h.

-

Referenced by SPF_record_expand_data().

+

Referenced by SPF_record_expand_data().


The documentation for this union was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00186.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00186.html 2023-01-07 18:00:51.963103838 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00186.html 2023-01-07 18:00:51.963103838 +0000 @@ -45,7 +45,7 @@
-

#include <spf_record.h>

+

#include <spf_record.h>

@@ -58,7 +58,7 @@

Data Fields

Detailed Description

-

Definition at line 173 of file spf_record.h.

+

Definition at line 173 of file spf_record.h.

Field Documentation

◆ mech_len

@@ -73,9 +73,9 @@

bytes of data or cidr len

-

Definition at line 178 of file spf_record.h.

+

Definition at line 178 of file spf_record.h.

-

Referenced by SPF_record_stringify().

+

Referenced by SPF_record_stringify().

@@ -92,9 +92,9 @@

A/MX/PTR/...

-

Definition at line 177 of file spf_record.h.

+

Definition at line 177 of file spf_record.h.

-

Referenced by SPF_record_interpret(), and SPF_record_stringify().

+

Referenced by SPF_record_interpret(), and SPF_record_stringify().

@@ -111,14 +111,14 @@

PASS/FAIL/...

-

Definition at line 176 of file spf_record.h.

+

Definition at line 176 of file spf_record.h.

-

Referenced by SPF_record_interpret(), and SPF_record_stringify().

+

Referenced by SPF_record_interpret(), and SPF_record_stringify().


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00190.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00190.html 2023-01-07 18:00:51.979103954 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00190.html 2023-01-07 18:00:51.979103954 +0000 @@ -45,7 +45,7 @@
-

#include <spf_record.h>

+

#include <spf_record.h>

@@ -56,7 +56,7 @@

Data Fields

Detailed Description

-

Definition at line 186 of file spf_record.h.

+

Definition at line 186 of file spf_record.h.

Field Documentation

◆ data_len

@@ -70,7 +70,7 @@
-

Definition at line 190 of file spf_record.h.

+

Definition at line 190 of file spf_record.h.

@@ -86,14 +86,14 @@
-

Definition at line 189 of file spf_record.h.

+

Definition at line 189 of file spf_record.h.

-

Referenced by SPF_record_stringify().

+

Referenced by SPF_record_stringify().


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00194.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00194.html 2023-01-07 18:00:51.995104070 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00194.html 2023-01-07 18:00:51.995104070 +0000 @@ -45,7 +45,7 @@
-

#include <spf_record.h>

+

#include <spf_record.h>

Collaboration diagram for SPF_record_t:
@@ -85,7 +85,7 @@

Detailed Description

Compiled SPF records as used internally by libspf2

-

Definition at line 200 of file spf_record.h.

+

Definition at line 200 of file spf_record.h.

Field Documentation

◆ mech_first

@@ -101,7 +101,7 @@

Buffer for mechanisms.

-

Definition at line 211 of file spf_record.h.

+

Definition at line 211 of file spf_record.h.

@@ -118,7 +118,7 @@

Used size (non-network format).

-

Definition at line 213 of file spf_record.h.

+

Definition at line 213 of file spf_record.h.

@@ -136,7 +136,7 @@

Malloc'ed size.

-

Definition at line 212 of file spf_record.h.

+

Definition at line 212 of file spf_record.h.

@@ -154,7 +154,7 @@

Buffer for modifiers.

-

Definition at line 215 of file spf_record.h.

+

Definition at line 215 of file spf_record.h.

@@ -171,7 +171,7 @@

Used size (non-network format).

-

Definition at line 217 of file spf_record.h.

+

Definition at line 217 of file spf_record.h.

@@ -189,7 +189,7 @@

Malloc'ed size.

-

Definition at line 216 of file spf_record.h.

+

Definition at line 216 of file spf_record.h.

@@ -207,7 +207,7 @@

Number of DNS mechanisms.

-

Definition at line 208 of file spf_record.h.

+

Definition at line 208 of file spf_record.h.

@@ -225,7 +225,7 @@

Number of mechanisms.

-

Definition at line 206 of file spf_record.h.

+

Definition at line 206 of file spf_record.h.

@@ -243,7 +243,7 @@

Number of modifiers.

-

Definition at line 207 of file spf_record.h.

+

Definition at line 207 of file spf_record.h.

@@ -259,7 +259,7 @@
-

Definition at line 202 of file spf_record.h.

+

Definition at line 202 of file spf_record.h.

@@ -277,12 +277,12 @@

SPF spec version number.

-

Definition at line 205 of file spf_record.h.

+

Definition at line 205 of file spf_record.h.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00198.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00198.html 2023-01-07 18:00:52.011104188 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00198.html 2023-01-07 18:00:52.011104188 +0000 @@ -45,7 +45,7 @@
-

#include <spf_record.h>

+

#include <spf_record.h>

@@ -54,7 +54,7 @@

Data Fields

Detailed Description

-

Definition at line 220 of file spf_record.h.

+

Definition at line 220 of file spf_record.h.

Field Documentation

◆ macro_len

@@ -69,12 +69,12 @@

bytes of data

-

Definition at line 222 of file spf_record.h.

+

Definition at line 222 of file spf_record.h.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00202.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00202.html 2023-01-07 18:00:52.031104333 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00202.html 2023-01-07 18:00:52.031104333 +0000 @@ -45,7 +45,7 @@
-

#include <spf_request.h>

+

#include <spf_request.h>

@@ -78,7 +78,7 @@

Data Fields

Detailed Description

-

Definition at line 23 of file spf_request.h.

+

Definition at line 23 of file spf_request.h.

Field Documentation

◆ client_dom

@@ -92,7 +92,7 @@
-

Definition at line 47 of file spf_request.h.

+

Definition at line 47 of file spf_request.h.

@@ -108,7 +108,7 @@
-

Definition at line 28 of file spf_request.h.

+

Definition at line 28 of file spf_request.h.

@@ -124,7 +124,7 @@
-

Definition at line 50 of file spf_request.h.

+

Definition at line 50 of file spf_request.h.

@@ -140,7 +140,7 @@
-

Definition at line 31 of file spf_request.h.

+

Definition at line 31 of file spf_request.h.

@@ -156,7 +156,7 @@
-

Definition at line 46 of file spf_request.h.

+

Definition at line 46 of file spf_request.h.

@@ -172,7 +172,7 @@
-

Definition at line 45 of file spf_request.h.

+

Definition at line 45 of file spf_request.h.

@@ -188,7 +188,7 @@
-

Definition at line 32 of file spf_request.h.

+

Definition at line 32 of file spf_request.h.

@@ -204,7 +204,7 @@
-

Definition at line 29 of file spf_request.h.

+

Definition at line 29 of file spf_request.h.

@@ -220,7 +220,7 @@
-

Definition at line 30 of file spf_request.h.

+

Definition at line 30 of file spf_request.h.

@@ -236,7 +236,7 @@
-

Definition at line 33 of file spf_request.h.

+

Definition at line 33 of file spf_request.h.

@@ -252,7 +252,7 @@
-

Definition at line 25 of file spf_request.h.

+

Definition at line 25 of file spf_request.h.

@@ -268,7 +268,7 @@
-

Definition at line 42 of file spf_request.h.

+

Definition at line 42 of file spf_request.h.

@@ -284,12 +284,12 @@
-

Definition at line 41 of file spf_request.h.

+

Definition at line 41 of file spf_request.h.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00206.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00206.html 2023-01-07 18:00:52.047104450 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00206.html 2023-01-07 18:00:52.047104450 +0000 @@ -45,11 +45,11 @@
-

#include <spf_response.h>

+

#include <spf_response.h>

- + @@ -58,7 +58,7 @@

Data Fields

SPF_errcode_t code
SPF_errcode_t code
 
char * message
 

Detailed Description

-

Definition at line 156 of file spf_response.h.

+

Definition at line 156 of file spf_response.h.

Field Documentation

◆ code

@@ -67,14 +67,14 @@
- +
SPF_errcode_t SPF_error_t::codeSPF_errcode_t SPF_error_t::code
-

Definition at line 159 of file spf_response.h.

+

Definition at line 159 of file spf_response.h.

-

Referenced by SPF_error_code().

+

Referenced by SPF_error_code().

@@ -90,9 +90,9 @@
-

Definition at line 161 of file spf_response.h.

+

Definition at line 161 of file spf_response.h.

-

Referenced by SPF_error_errorp().

+

Referenced by SPF_error_errorp().

@@ -108,14 +108,14 @@
-

Definition at line 160 of file spf_response.h.

+

Definition at line 160 of file spf_response.h.

-

Referenced by SPF_error_message().

+

Referenced by SPF_error_message().


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00210.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00210.html 2023-01-07 18:00:52.067104595 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00210.html 2023-01-07 18:00:52.067104595 +0000 @@ -45,7 +45,7 @@
-

#include <spf_response.h>

+

#include <spf_response.h>

Collaboration diagram for SPF_response_t:
@@ -62,11 +62,11 @@   SPF_record_t * spf_record_exp   -SPF_result_t result +SPF_result_t result   -SPF_reason_t reason +SPF_reason_t reason   -SPF_errcode_t err +SPF_errcode_t err   char * received_spf   @@ -91,7 +91,7 @@

Detailed Description

-

Definition at line 169 of file spf_response.h.

+

Definition at line 169 of file spf_response.h.

Field Documentation

◆ err

@@ -100,12 +100,12 @@
- +
SPF_errcode_t SPF_response_t::errSPF_errcode_t SPF_response_t::err
-

Definition at line 177 of file spf_response.h.

+

Definition at line 177 of file spf_response.h.

@@ -121,7 +121,7 @@
-

Definition at line 186 of file spf_response.h.

+

Definition at line 186 of file spf_response.h.

@@ -138,7 +138,7 @@

Used

-

Definition at line 188 of file spf_response.h.

+

Definition at line 188 of file spf_response.h.

@@ -155,7 +155,7 @@

Allocated

-

Definition at line 187 of file spf_response.h.

+

Definition at line 187 of file spf_response.h.

@@ -171,7 +171,7 @@
-

Definition at line 183 of file spf_response.h.

+

Definition at line 183 of file spf_response.h.

@@ -187,7 +187,7 @@
-

Definition at line 181 of file spf_response.h.

+

Definition at line 181 of file spf_response.h.

@@ -203,7 +203,7 @@
-

Definition at line 192 of file spf_response.h.

+

Definition at line 192 of file spf_response.h.

@@ -220,7 +220,7 @@

Excluding warnings

-

Definition at line 189 of file spf_response.h.

+

Definition at line 189 of file spf_response.h.

@@ -231,12 +231,12 @@
- +
SPF_reason_t SPF_response_t::reasonSPF_reason_t SPF_response_t::reason
-

Definition at line 176 of file spf_response.h.

+

Definition at line 176 of file spf_response.h.

@@ -252,7 +252,7 @@
-

Definition at line 179 of file spf_response.h.

+

Definition at line 179 of file spf_response.h.

@@ -268,7 +268,7 @@
-

Definition at line 180 of file spf_response.h.

+

Definition at line 180 of file spf_response.h.

@@ -279,12 +279,12 @@
- +
SPF_result_t SPF_response_t::resultSPF_result_t SPF_response_t::result
-

Definition at line 175 of file spf_response.h.

+

Definition at line 175 of file spf_response.h.

@@ -300,7 +300,7 @@
-

Definition at line 182 of file spf_response.h.

+

Definition at line 182 of file spf_response.h.

@@ -316,7 +316,7 @@
-

Definition at line 172 of file spf_response.h.

+

Definition at line 172 of file spf_response.h.

@@ -332,12 +332,12 @@
-

Definition at line 171 of file spf_response.h.

+

Definition at line 171 of file spf_response.h.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00214.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00214.html 2023-01-07 18:00:52.087104739 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00214.html 2023-01-07 18:00:52.087104739 +0000 @@ -45,7 +45,7 @@
-

#include <spf_server.h>

+

#include <spf_server.h>

@@ -72,7 +72,7 @@

Data Fields

Detailed Description

-

Definition at line 55 of file spf_server.h.

+

Definition at line 55 of file spf_server.h.

Field Documentation

◆ debug

@@ -87,7 +87,7 @@

Print debug info.

-

Definition at line 67 of file spf_server.h.

+

Definition at line 67 of file spf_server.h.

@@ -104,7 +104,7 @@

true if we own the resolver.

-

Definition at line 68 of file spf_server.h.

+

Definition at line 68 of file spf_server.h.

@@ -121,7 +121,7 @@

Explanation string.

-

Definition at line 58 of file spf_server.h.

+

Definition at line 58 of file spf_server.h.

@@ -138,7 +138,7 @@

Local policies.

-

Definition at line 57 of file spf_server.h.

+

Definition at line 57 of file spf_server.h.

@@ -155,7 +155,7 @@

DoS limit on SPF mechanisms.

-

Definition at line 62 of file spf_server.h.

+

Definition at line 62 of file spf_server.h.

@@ -172,7 +172,7 @@

DoS limit on MX records.

-

Definition at line 64 of file spf_server.h.

+

Definition at line 64 of file spf_server.h.

@@ -189,7 +189,7 @@

DoS limit on PTR records.

-

Definition at line 63 of file spf_server.h.

+

Definition at line 63 of file spf_server.h.

@@ -206,7 +206,7 @@

Default receiving domain.

-

Definition at line 60 of file spf_server.h.

+

Definition at line 60 of file spf_server.h.

@@ -223,7 +223,7 @@

SPF DNS resolver.

-

Definition at line 56 of file spf_server.h.

+

Definition at line 56 of file spf_server.h.

@@ -240,12 +240,12 @@

Limit charset in messages.

-

Definition at line 66 of file spf_server.h.

+

Definition at line 66 of file spf_server.h.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00222.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00222.html 2023-01-07 18:00:52.103104856 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00222.html 2023-01-07 18:00:52.103104856 +0000 @@ -64,7 +64,7 @@

Detailed Description

-

Definition at line 82 of file spf_dns_cache.c.

+

Definition at line 82 of file spf_dns_cache.c.

Field Documentation

◆ next

@@ -78,7 +78,7 @@
-

Definition at line 84 of file spf_dns_cache.c.

+

Definition at line 84 of file spf_dns_cache.c.

@@ -94,12 +94,12 @@
-

Definition at line 85 of file spf_dns_cache.c.

+

Definition at line 85 of file spf_dns_cache.c.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00226.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00226.html 2023-01-07 18:00:52.119104973 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00226.html 2023-01-07 18:00:52.119104973 +0000 @@ -81,7 +81,7 @@

Detailed Description

-

Definition at line 88 of file spf_dns_cache.c.

+

Definition at line 88 of file spf_dns_cache.c.

Field Documentation

◆ cache

@@ -95,9 +95,9 @@
-

Definition at line 90 of file spf_dns_cache.c.

+

Definition at line 90 of file spf_dns_cache.c.

-

Referenced by SPF_dns_cache_new().

+

Referenced by SPF_dns_cache_new().

@@ -113,9 +113,9 @@
-

Definition at line 92 of file spf_dns_cache.c.

+

Definition at line 92 of file spf_dns_cache.c.

-

Referenced by SPF_dns_cache_new(), and SPF_dns_cache_set_ttl().

+

Referenced by SPF_dns_cache_new(), and SPF_dns_cache_set_ttl().

@@ -131,9 +131,9 @@
-

Definition at line 91 of file spf_dns_cache.c.

+

Definition at line 91 of file spf_dns_cache.c.

-

Referenced by SPF_dns_cache_new().

+

Referenced by SPF_dns_cache_new().

@@ -149,9 +149,9 @@
-

Definition at line 107 of file spf_dns_cache.c.

+

Definition at line 107 of file spf_dns_cache.c.

-

Referenced by SPF_dns_cache_new(), and SPF_dns_set_conserve_cache().

+

Referenced by SPF_dns_cache_new(), and SPF_dns_set_conserve_cache().

@@ -167,9 +167,9 @@
-

Definition at line 103 of file spf_dns_cache.c.

+

Definition at line 103 of file spf_dns_cache.c.

-

Referenced by SPF_dns_cache_new(), and SPF_dns_cache_set_ttl().

+

Referenced by SPF_dns_cache_new(), and SPF_dns_cache_set_ttl().

@@ -185,9 +185,9 @@
-

Definition at line 94 of file spf_dns_cache.c.

+

Definition at line 94 of file spf_dns_cache.c.

-

Referenced by SPF_dns_cache_new().

+

Referenced by SPF_dns_cache_new().

@@ -203,9 +203,9 @@
-

Definition at line 95 of file spf_dns_cache.c.

+

Definition at line 95 of file spf_dns_cache.c.

-

Referenced by SPF_dns_cache_new().

+

Referenced by SPF_dns_cache_new().

@@ -221,9 +221,9 @@
-

Definition at line 102 of file spf_dns_cache.c.

+

Definition at line 102 of file spf_dns_cache.c.

-

Referenced by SPF_dns_cache_new(), and SPF_dns_cache_set_ttl().

+

Referenced by SPF_dns_cache_new(), and SPF_dns_cache_set_ttl().

@@ -239,9 +239,9 @@
-

Definition at line 105 of file spf_dns_cache.c.

+

Definition at line 105 of file spf_dns_cache.c.

-

Referenced by SPF_dns_cache_new(), and SPF_dns_cache_set_ttl().

+

Referenced by SPF_dns_cache_new(), and SPF_dns_cache_set_ttl().

@@ -257,14 +257,14 @@
-

Definition at line 104 of file spf_dns_cache.c.

+

Definition at line 104 of file spf_dns_cache.c.

-

Referenced by SPF_dns_cache_new(), and SPF_dns_cache_set_ttl().

+

Referenced by SPF_dns_cache_new(), and SPF_dns_cache_set_ttl().


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00230.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00230.html 2023-01-07 18:00:52.135105090 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00230.html 2023-01-07 18:00:52.135105090 +0000 @@ -51,14 +51,14 @@   int rr_type   -SPF_dns_stat_t herrno +SPF_dns_stat_t herrno   const char * data  

Detailed Description

-

Definition at line 48 of file spf_dns_test.c.

+

Definition at line 48 of file spf_dns_test.c.

Field Documentation

◆ data

@@ -72,7 +72,7 @@
-

Definition at line 53 of file spf_dns_test.c.

+

Definition at line 53 of file spf_dns_test.c.

@@ -88,7 +88,7 @@
-

Definition at line 50 of file spf_dns_test.c.

+

Definition at line 50 of file spf_dns_test.c.

@@ -99,12 +99,12 @@
- +
SPF_dns_stat_t SPF_dns_test_data_t::herrnoSPF_dns_stat_t SPF_dns_test_data_t::herrno
-

Definition at line 52 of file spf_dns_test.c.

+

Definition at line 52 of file spf_dns_test.c.

@@ -120,12 +120,12 @@
-

Definition at line 51 of file spf_dns_test.c.

+

Definition at line 51 of file spf_dns_test.c.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00234.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00234.html 2023-01-07 18:00:52.155105234 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00234.html 2023-01-07 18:00:52.155105234 +0000 @@ -68,7 +68,7 @@

Detailed Description

-

Definition at line 73 of file spf_dns_zone.c.

+

Definition at line 73 of file spf_dns_zone.c.

Field Documentation

◆ num_zone

@@ -82,9 +82,9 @@
-

Definition at line 76 of file spf_dns_zone.c.

+

Definition at line 76 of file spf_dns_zone.c.

-

Referenced by SPF_dns_zone_add_str(), and SPF_dns_zone_new().

+

Referenced by SPF_dns_zone_add_str(), and SPF_dns_zone_new().

@@ -100,9 +100,9 @@
-

Definition at line 78 of file spf_dns_zone.c.

+

Definition at line 78 of file spf_dns_zone.c.

-

Referenced by SPF_dns_zone_new().

+

Referenced by SPF_dns_zone_new().

@@ -118,9 +118,9 @@
-

Definition at line 75 of file spf_dns_zone.c.

+

Definition at line 75 of file spf_dns_zone.c.

-

Referenced by SPF_dns_zone_add_str(), and SPF_dns_zone_new().

+

Referenced by SPF_dns_zone_add_str(), and SPF_dns_zone_new().

@@ -136,14 +136,14 @@
-

Definition at line 77 of file spf_dns_zone.c.

+

Definition at line 77 of file spf_dns_zone.c.

-

Referenced by SPF_dns_zone_add_str(), and SPF_dns_zone_new().

+

Referenced by SPF_dns_zone_add_str(), and SPF_dns_zone_new().


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00238.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00238.html 2023-01-07 18:00:52.167105322 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00238.html 2023-01-07 18:00:52.167105322 +0000 @@ -57,28 +57,28 @@   int debug   -bool sec_mx +bool sec_mx   char * fallback   char * rec_dom   -bool sanitize +bool sanitize   int max_lookup   char * localpolicy   -bool use_trusted +bool use_trusted   char * explanation   -bool onerequest +bool onerequest  

Detailed Description

-

Definition at line 129 of file spfd.c.

+

Definition at line 129 of file spfd.c.

Field Documentation

◆ debug

@@ -92,7 +92,7 @@
-

Definition at line 148 of file spfd.c.

+

Definition at line 148 of file spfd.c.

@@ -108,7 +108,7 @@
-

Definition at line 157 of file spfd.c.

+

Definition at line 157 of file spfd.c.

@@ -124,7 +124,7 @@
-

Definition at line 150 of file spfd.c.

+

Definition at line 150 of file spfd.c.

@@ -140,7 +140,7 @@
-

Definition at line 155 of file spfd.c.

+

Definition at line 155 of file spfd.c.

@@ -156,7 +156,7 @@
-

Definition at line 154 of file spfd.c.

+

Definition at line 154 of file spfd.c.

@@ -167,12 +167,12 @@
- +
bool config_t::onerequestbool config_t::onerequest
-

Definition at line 158 of file spfd.c.

+

Definition at line 158 of file spfd.c.

@@ -188,7 +188,7 @@
-

Definition at line 133 of file spfd.c.

+

Definition at line 133 of file spfd.c.

@@ -204,7 +204,7 @@
-

Definition at line 140 of file spfd.c.

+

Definition at line 140 of file spfd.c.

@@ -220,7 +220,7 @@
-

Definition at line 152 of file spfd.c.

+

Definition at line 152 of file spfd.c.

@@ -231,12 +231,12 @@
- +
bool config_t::sanitizebool config_t::sanitize
-

Definition at line 153 of file spfd.c.

+

Definition at line 153 of file spfd.c.

@@ -247,12 +247,12 @@
- +
bool config_t::sec_mxbool config_t::sec_mx
-

Definition at line 149 of file spfd.c.

+

Definition at line 149 of file spfd.c.

@@ -268,7 +268,7 @@
-

Definition at line 131 of file spfd.c.

+

Definition at line 131 of file spfd.c.

@@ -284,7 +284,7 @@
-

Definition at line 132 of file spfd.c.

+

Definition at line 132 of file spfd.c.

@@ -295,17 +295,17 @@
- +
bool config_t::use_trustedbool config_t::use_trusted
-

Definition at line 156 of file spfd.c.

+

Definition at line 156 of file spfd.c.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00242.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00242.html 2023-01-07 18:00:52.191105497 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00242.html 2023-01-07 18:00:52.191105497 +0000 @@ -70,7 +70,7 @@   char * rcpt_to   -SPF_errcode_t spf_err +SPF_errcode_t spf_err   SPF_request_t * spf_request   @@ -83,7 +83,7 @@

Detailed Description

-

Definition at line 161 of file spfd.c.

+

Definition at line 161 of file spfd.c.

Field Documentation

◆ 

@@ -111,7 +111,7 @@
-

Definition at line 168 of file spfd.c.

+

Definition at line 168 of file spfd.c.

@@ -127,7 +127,7 @@
-

Definition at line 169 of file spfd.c.

+

Definition at line 169 of file spfd.c.

@@ -143,7 +143,7 @@
-

Definition at line 170 of file spfd.c.

+

Definition at line 170 of file spfd.c.

@@ -159,7 +159,7 @@
-

Definition at line 181 of file spfd.c.

+

Definition at line 181 of file spfd.c.

@@ -175,7 +175,7 @@
-

Definition at line 182 of file spfd.c.

+

Definition at line 182 of file spfd.c.

@@ -191,7 +191,7 @@
-

Definition at line 173 of file spfd.c.

+

Definition at line 173 of file spfd.c.

@@ -207,7 +207,7 @@
-

Definition at line 165 of file spfd.c.

+

Definition at line 165 of file spfd.c.

@@ -223,7 +223,7 @@
-

Definition at line 172 of file spfd.c.

+

Definition at line 172 of file spfd.c.

@@ -239,7 +239,7 @@
-

Definition at line 175 of file spfd.c.

+

Definition at line 175 of file spfd.c.

@@ -255,7 +255,7 @@
-

Definition at line 174 of file spfd.c.

+

Definition at line 174 of file spfd.c.

@@ -271,7 +271,7 @@
-

Definition at line 163 of file spfd.c.

+

Definition at line 163 of file spfd.c.

@@ -282,12 +282,12 @@
- +
SPF_errcode_t request_t::spf_errSPF_errcode_t request_t::spf_err
-

Definition at line 177 of file spfd.c.

+

Definition at line 177 of file spfd.c.

@@ -303,7 +303,7 @@
-

Definition at line 178 of file spfd.c.

+

Definition at line 178 of file spfd.c.

@@ -319,7 +319,7 @@
-

Definition at line 179 of file spfd.c.

+

Definition at line 179 of file spfd.c.

@@ -335,12 +335,12 @@
-

Definition at line 166 of file spfd.c.

+

Definition at line 166 of file spfd.c.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00250.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00250.html 2023-01-07 18:00:52.203105584 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00250.html 2023-01-07 18:00:52.203105584 +0000 @@ -56,7 +56,7 @@

Detailed Description

-

Definition at line 185 of file spfd.c.

+

Definition at line 185 of file spfd.c.

Field Documentation

◆ sock_tcp

@@ -70,7 +70,7 @@
-

Definition at line 188 of file spfd.c.

+

Definition at line 188 of file spfd.c.

@@ -86,7 +86,7 @@
-

Definition at line 187 of file spfd.c.

+

Definition at line 187 of file spfd.c.

@@ -102,12 +102,12 @@
-

Definition at line 189 of file spfd.c.

+

Definition at line 189 of file spfd.c.


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00254.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00254.html 2023-01-07 18:00:52.219105700 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00254.html 2023-01-07 18:00:52.219105700 +0000 @@ -66,7 +66,7 @@

Detailed Description

-

Definition at line 306 of file spfquery.c.

+

Definition at line 306 of file spfquery.c.

Field Documentation

◆ debug

@@ -80,9 +80,9 @@
-

Definition at line 316 of file spfquery.c.

+

Definition at line 316 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().

@@ -98,9 +98,9 @@
-

Definition at line 310 of file spfquery.c.

+

Definition at line 310 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().

@@ -116,9 +116,9 @@
-

Definition at line 311 of file spfquery.c.

+

Definition at line 311 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().

@@ -134,9 +134,9 @@
-

Definition at line 309 of file spfquery.c.

+

Definition at line 309 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().

@@ -152,9 +152,9 @@
-

Definition at line 314 of file spfquery.c.

+

Definition at line 314 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().

@@ -170,9 +170,9 @@
-

Definition at line 312 of file spfquery.c.

+

Definition at line 312 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().

@@ -188,9 +188,9 @@
-

Definition at line 315 of file spfquery.c.

+

Definition at line 315 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().

@@ -206,14 +206,14 @@
-

Definition at line 313 of file spfquery.c.

+

Definition at line 313 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/a00258.html differs (HTML document, ASCII text) --- old//usr/share/doc/packages/spf2-apidocs/html/a00258.html 2023-01-07 18:00:52.239105846 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/a00258.html 2023-01-07 18:00:52.239105846 +0000 @@ -58,7 +58,7 @@

Detailed Description

-

Definition at line 319 of file spfquery.c.

+

Definition at line 319 of file spfquery.c.

Field Documentation

◆ helo

@@ -72,9 +72,9 @@
-

Definition at line 323 of file spfquery.c.

+

Definition at line 323 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().

@@ -90,9 +90,9 @@
-

Definition at line 321 of file spfquery.c.

+

Definition at line 321 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().

@@ -108,9 +108,9 @@
-

Definition at line 324 of file spfquery.c.

+

Definition at line 324 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().

@@ -126,14 +126,14 @@
-

Definition at line 322 of file spfquery.c.

+

Definition at line 322 of file spfquery.c.

-

Referenced by main().

+

Referenced by main().


The documentation for this struct was generated from the following file: /usr/share/doc/packages/spf2-apidocs/html/dir_000001_000000.html differs (HTML document, ASCII text, with very long lines) --- old//usr/share/doc/packages/spf2-apidocs/html/dir_000001_000000.html 2023-01-07 18:00:52.255105964 +0000 +++ new//usr/share/doc/packages/spf2-apidocs/html/dir_000001_000000.html 2023-01-07 18:00:52.259105992 +0000 @@ -43,7 +43,7 @@
-

libspf2 → include Relation

File in src/libspf2Includes file in src/include
spf_compile.cspf.h
spf_compile.cspf_internal.h
spf_compile.cspf_record.h
spf_compile.cspf_response.h
spf_compile.cspf_sys_config.h
spf_dns.cspf.h
spf_dns.cspf_dns.h
spf_dns.cspf_dns_internal.h
spf_dns.cspf_internal.h
spf_dns.cspf_sys_config.h
spf_dns_cache.cspf.h
spf_dns_cache.cspf_dns.h
spf_dns_cache.cspf_dns_cache.h
spf_dns_cache.cspf_dns_internal.h
spf_dns_cache.cspf_internal.h
spf_dns_cache.cspf_sys_config.h
spf_dns_null.cspf.h
spf_dns_null.cspf_dns.h
spf_dns_null.cspf_dns_internal.h
spf_dns_null.cspf_dns_null.h
spf_dns_null.cspf_internal.h
spf_dns_null.cspf_sys_config.h
spf_dns_resolv.cspf.h
spf_dns_resolv.cspf_dns.h
spf_dns_resolv.cspf_dns_internal.h
spf_dns_resolv.cspf_dns_resolv.h
spf_dns_resolv.cspf_internal.h
spf_dns_resolv.cspf_sys_config.h
spf_dns_rr.cspf.h
spf_dns_rr.cspf_dns.h
spf_dns_rr.cspf_dns_internal.h
spf_dns_rr.cspf_dns_rr.h
spf_dns_rr.cspf_internal.h
spf_dns_rr.cspf_sys_config.h
spf_dns_test.cspf.h
spf_dns_test.cspf_dns.h
spf_dns_test.cspf_dns_internal.h
spf_dns_test.cspf_dns_test.h
spf_dns_test.cspf_dns_zone.h
spf_dns_test.cspf_internal.h
spf_dns_test.cspf_sys_config.h
spf_dns_zone.cspf.h
spf_dns_zone.cspf_dns.h
spf_dns_zone.cspf_dns_internal.h
spf_dns_zone.cspf_dns_zone.h
spf_dns_zone.cspf_internal.h
spf_dns_zone.cspf_sys_config.h
spf_expand.cspf.h
spf_expand.cspf_internal.h
spf_expand.cspf_record.h
spf_expand.cspf_sys_config.h
spf_get_exp.cspf.h
spf_get_exp.cspf_dns.h
spf_get_exp.cspf_dns_internal.h
spf_get_exp.cspf_internal.h
spf_get_exp.cspf_sys_config.h
spf_get_spf.cspf.h
spf_get_spf.cspf_dns.h
spf_get_spf.cspf_dns_internal.h
spf_get_spf.cspf_internal.h
spf_get_spf.cspf_sys_config.h
spf_id2str.cspf.h
spf_id2str.cspf_internal.h
spf_id2str.cspf_sys_config.h
spf_interpret.cspf.h
spf_interpret.cspf_dns.h
spf_interpret.cspf_dns_internal.h
spf_interpret.cspf_internal.h
spf_interpret.cspf_server.h
spf_interpret.cspf_sys_config.h
spf_log.cspf.h
spf_log.cspf_internal.h
spf_log.cspf_sys_config.h
spf_log_default.cspf.h
spf_log_default.cspf_internal.h
spf_log_default.cspf_sys_config.h
spf_log_stdio.cspf.h
spf_log_stdio.cspf_sys_config.h
spf_log_syslog.cspf_sys_config.h
spf_print.cspf.h
spf_print.cspf_internal.h
spf_print.cspf_sys_config.h
spf_record.cspf.h
spf_record.cspf_internal.h
spf_record.cspf_record.h
spf_record.cspf_sys_config.h
spf_request.cspf.h
spf_request.cspf_dns.h
spf_request.cspf_internal.h
spf_request.cspf_request.h
spf_request.cspf_sys_config.h
spf_response.cspf.h
spf_response.cspf_dns.h
spf_response.cspf_response.h
spf_response.cspf_sys_config.h
spf_server.cspf.h
spf_server.cspf_dns.h
spf_server.cspf_dns_cache.h
spf_server.cspf_dns_internal.h
spf_server.cspf_dns_resolv.h
spf_server.cspf_dns_zone.h
spf_server.cspf_internal.h
spf_server.cspf_record.h
spf_server.cspf_response.h
spf_server.cspf_server.h
spf_server.cspf_sys_config.h
spf_strerror.cspf.h
spf_strerror.cspf_sys_config.h
spf_utils.cspf.h
spf_utils.cspf_internal.h
spf_utils.cspf_sys_config.h
+

libspf2 → include Relation

File in src/libspf2Includes file in src/include
spf_compile.cspf.h
spf_compile.cspf_internal.h
spf_compile.cspf_record.h
spf_compile.cspf_response.h
spf_compile.cspf_sys_config.h
spf_dns.cspf.h
spf_dns.cspf_dns.h
spf_dns.cspf_dns_internal.h
spf_dns.cspf_internal.h
spf_dns.cspf_sys_config.h
spf_dns_cache.cspf.h
spf_dns_cache.cspf_dns.h
spf_dns_cache.cspf_dns_cache.h
spf_dns_cache.cspf_dns_internal.h
spf_dns_cache.cspf_internal.h
spf_dns_cache.cspf_sys_config.h
spf_dns_null.cspf.h
spf_dns_null.cspf_dns.h
spf_dns_null.cspf_dns_internal.h
spf_dns_null.cspf_dns_null.h
spf_dns_null.cspf_internal.h
spf_dns_null.cspf_sys_config.h
spf_dns_resolv.cspf.h
spf_dns_resolv.cspf_dns.h
spf_dns_resolv.cspf_dns_internal.h
spf_dns_resolv.cspf_dns_resolv.h
spf_dns_resolv.cspf_internal.h
spf_dns_resolv.cspf_sys_config.h
spf_dns_rr.cspf.h
spf_dns_rr.cspf_dns.h
spf_dns_rr.cspf_dns_internal.h
spf_dns_rr.cspf_dns_rr.h
spf_dns_rr.cspf_internal.h
spf_dns_rr.cspf_sys_config.h
spf_dns_test.cspf.h
spf_dns_test.cspf_dns.h
spf_dns_test.cspf_dns_internal.h
spf_dns_test.cspf_dns_test.h
spf_dns_test.cspf_dns_zone.h
spf_dns_test.cspf_internal.h
spf_dns_test.cspf_sys_config.h
spf_dns_zone.cspf.h
spf_dns_zone.cspf_dns.h
spf_dns_zone.cspf_dns_internal.h
spf_dns_zone.cspf_dns_zone.h
spf_dns_zone.cspf_internal.h
spf_dns_zone.cspf_sys_config.h
spf_expand.cspf.h
spf_expand.cspf_internal.h
spf_expand.cspf_record.h
spf_expand.cspf_sys_config.h
spf_get_exp.cspf.h
spf_get_exp.cspf_dns.h
spf_get_exp.cspf_dns_internal.h
spf_get_exp.cspf_internal.h
spf_get_exp.cspf_sys_config.h
spf_get_spf.cspf.h
spf_get_spf.cspf_dns.h
spf_get_spf.cspf_dns_internal.h
spf_get_spf.cspf_internal.h
spf_get_spf.cspf_sys_config.h
spf_id2str.cspf.h
spf_id2str.cspf_internal.h
spf_id2str.cspf_sys_config.h
spf_interpret.cspf.h
spf_interpret.cspf_dns.h
spf_interpret.cspf_dns_internal.h
spf_interpret.cspf_internal.h
spf_interpret.cspf_server.h
spf_interpret.cspf_sys_config.h
spf_log.cspf.h
spf_log.cspf_internal.h
spf_log.cspf_sys_config.h
spf_log_default.cspf.h
spf_log_default.cspf_internal.h
spf_log_default.cspf_sys_config.h
spf_log_stdio.cspf.h
spf_log_stdio.cspf_sys_config.h
spf_log_syslog.cspf_sys_config.h
spf_print.cspf.h
spf_print.cspf_internal.h
spf_print.cspf_sys_config.h
spf_record.cspf.h
spf_record.cspf_internal.h
spf_record.cspf_record.h
spf_record.cspf_sys_config.h
spf_request.cspf.h
spf_request.cspf_dns.h
spf_request.cspf_internal.h
spf_request.cspf_request.h
spf_request.cspf_sys_config.h
spf_response.cspf.h
spf_response.cspf_dns.h
spf_response.cspf_response.h
spf_response.cspf_sys_config.h
spf_server.cspf.h
spf_server.cspf_dns.h
spf_server.cspf_dns_cache.h
spf_server.cspf_dns_internal.h
spf_server.cspf_dns_resolv.h
spf_server.cspf_dns_zone.h
spf_server.cspf_internal.h
spf_server.cspf_record.h
spf_server.cspf_response.h
spf_server.cspf_server.h
spf_server.cspf_sys_config.h
spf_strerror.cspf.h
spf_strerror.cspf_sys_config.h
spf_utils.cspf.h
spf_utils.cspf_internal.h
spf_utils.cspf_sys_config.h