/tags/1.2.5.dfsg-5/debian/control |
---|
0,0 → 1,51 |
Source: libspf2 |
Priority: optional |
Section: libs |
Maintainer: Magnus Holmgren <holmgren@debian.org> |
Build-Depends: debhelper (>> 5), cdbs, dpatch, autotools-dev |
Standards-Version: 3.7.3 |
Vcs-Svn: svn://svn.kibibyte.se/libspf2/trunk |
Vcs-Browser: http://svn.kibibyte.se/libspf2 |
Homepage: http://www.libspf2.org/ |
Package: libspf2-dev |
Section: libdevel |
Architecture: any |
Depends: libspf2-2 (= ${binary:Version}) |
Description: Header and development libraries for libspf2 |
libspf2 implements the Sender Policy Framework, a part of the SPF/SRS |
protocol pair. libspf2 is a library which allows email systems such |
as Sendmail, Postfix, Exim, Zmailer and MS Exchange to check SPF |
records and make sure that the email is authorized by the domain name |
that it is coming from. This prevents email forgery, commonly used by |
spammers, scammers and email viruses/worms. |
Package: libspf2-2 |
Section: libs |
Architecture: any |
Conflicts: libspf2-0 |
Replaces: libspf2-0 |
Depends: ${shlibs:Depends} |
Description: library for validating mail senders with SPF |
libspf2 implements the Sender Policy Framework, a part of the SPF/SRS |
protocol pair. libspf2 is a library which allows email systems such |
as Sendmail, Postfix, Exim, Zmailer and MS Exchange to check SPF |
records and make sure that the email is authorized by the domain name |
that it is coming from. This prevents email forgery, commonly used by |
spammers, scammers and email viruses/worms. |
Package: spfquery |
Section: mail |
Architecture: any |
Depends: ${shlibs:Depends} |
Conflicts: libmail-spf-query-perl (<< 1:1.999.1-3) |
Description: query SPF (Sender Policy Framework) to validate mail senders |
The Sender Policy Framework (SPF) is one part of the SPF/SRS protocol |
pair. SPF allows email systems such as Sendmail, Postfix, Exim, |
Zmailer and MS Exchange to check SPF records and make sure that the |
email is authorized by the domain name that it is coming from. This |
prevents email forgery, commonly used by spammers, scammers and email |
viruses/worms. |
. |
This package contains simple utilities that use libspf2 to test and |
query SPF records. |
/tags/1.2.5.dfsg-5/debian/changelog |
---|
0,0 → 1,167 |
libspf2 (1.2.5.dfsg-5) unstable; urgency=low |
* 43_new_explanation_url.dpatch: Bring default explanation up to date by |
referring to www.openspf.org instead of spf.pobox.com. |
* Add spfquery(1) manpage. |
* Fix format of copyright notice in debian/copyright. |
* Move upstream homepage URL to the new Homepage control field, rename |
VCS control fields, and update Standards-Version. |
* A few cosmetic adjustments including fixing the indentation of the |
1.2.5.dfsg-3 entry below (Closes: #465466). |
* New maintainer email address. |
-- Magnus Holmgren <holmgren@debian.org> Fri, 18 Apr 2008 17:51:28 +0200 |
libspf2 (1.2.5.dfsg-4) unstable; urgency=low |
* Added 23_spfquery_ipv6.dpatch: Make spfquery accept IPv6 addresses |
(Closes: #440147). Thanks to Matthias Cramer. |
* 35_untabify_help.dpatch: Make --help output of utilities less ugly by |
converting tabs to spaces. |
-- Magnus Holmgren <magnus@kibibyte.se> Wed, 05 Sep 2007 15:39:22 +0200 |
libspf2 (1.2.5.dfsg-3) unstable; urgency=low |
* 22_spfquery_fallback_segfault.dpatch: Fix fallback-related segfault in |
spfquery (Closes: #430414). Thanks to Robert Millan. |
* Correct debian/copyright (Closes: #433047). Thanks to Julian Mehnle. |
* A second patch from Robert split into three: |
* 40_permanent_include_errors.dpatch: Make permanent errors in |
processing an include: directive cause the parent evaluation to return |
a permanent error as well (Closes: #435139). |
* 41_none_not_neutral.dpatch: Use a diffent explanation for |
SPF_RESULT_NONE than the one for SPF_RESULT_NEUTRAL (Closes: #435140). |
* 42_empty_sender.dpatch: Use the HELO identity in MAIL FROM checks if |
the sender address has been set to the empty string (Closes: #431239). |
* debian/control: Add XS-Vcs-* fields. |
-- Magnus Holmgren <magnus@kibibyte.se> Wed, 22 Aug 2007 17:13:27 +0200 |
libspf2 (1.2.5.dfsg-2) unstable; urgency=low |
* 21_spfquery_infininte_loop.dpatch: Fix infinite loop when giving |
unimplemented options to spfquery. |
* 20_printf_types.dpatch: Revert to using standard conversion specifiers |
without z modifiers. |
* debian/watch: mangle away .dfsg from package version. |
* Lower spfquery and spfd alternatives priorities to 25. |
* Skip applying 01_line-endings.dpatch; it's meaningless. |
-- Magnus Holmgren <magnus@kibibyte.se> Wed, 06 Jun 2007 19:31:01 +0200 |
libspf2 (1.2.5.dfsg-1) unstable; urgency=low |
* New maintainer (Closes: #372629). |
* Repacked .orig.tar.gz without non-free IETF Internet Draft (Closes: |
#393390). |
* Merge updates from Ubuntu: |
- Add debian/compat and Build-depend on debhelper >= 5. |
- Add alternatives handling for /usr/bin/spfquery (Closes: #306875). |
- Conflict on libmail-spf-query-perl << 1:1.999.1-3. |
- Add postinst and prerm scripts. |
- debian/copyright: update author address. |
- debian/control: add final newline. |
* debian/control: |
* Change description of spfquery (Closes: #410592). |
* Add homepage to package descriptions. |
* Reduce Debian diff by changing line endings with sed instead. |
* Further reduce Debian diff by eliminating config.sub and config.guess |
from there. Build-depend on autotools-dev to ensure up-to-date |
versions instead. |
* The autogenerated spf_lib_version.h was put in the wrong directory, |
while there was a static spf_lib_version.h in the right directory. |
Fix that with some rules in debian/rules. |
* Use dpatch to manage patches. |
* Apply 20_64bit_types.dpatch to hopefully prevent segfaults on 64-bit |
architectures (Closes: #392793). Thanks to Thomas Jacob, Carsten |
Koch-Mauthe and Herbert Straub. |
* 20_printf_types.dpatch: Change format strings to use the z flag, |
meaning size_t, among other things. |
* 30_spfd_check_unlink_failure.dpatch: Fix a typo in spfd (patch from |
Thomas Jacob). |
* debian/watch: added. |
* Update Standards-Version to 3.7.2 without changes. |
* Apply 20_spf_dns_include_std_headers.dpatch: Include arpa/nameser.h and |
netdb.h from spf_dns.h instead of defining the constants needed unless |
certain HAVE_ macros are defined (Closes: #405885). |
* Apply 25_maxvals.dpatch, which brings certain processing limits (meant |
to mitigate DoS attacks) in line with RFC 4408. Thanks to Scott |
Kitterman. |
* debian/control: Change libspf2-dev dependency to ${binary:Version} so |
that binNMUs will work. |
* Ship spfd in the spfquery package (Closes: #258360). |
-- Magnus Holmgren <magnus@kibibyte.se> Sat, 24 Mar 2007 14:51:23 +0100 |
libspf2 (1.2.5-4) unstable; urgency=low |
* Orphan. |
-- Eric Dorland <eric@debian.org> Mon, 20 Nov 2006 02:16:20 -0500 |
libspf2 (1.2.5-3) unstable; urgency=low |
* src/include/spf_server.h: Remove useless include to |
spf_dns_internal.h. (Closes: #312145) |
* debian/control: Have spfquery against libmail-spf-query-perl to work |
around #306875, hopefully temporarily. |
-- Eric Dorland <eric@debian.org> Sat, 30 Jul 2005 01:25:24 -0400 |
libspf2 (1.2.5-2) unstable; urgency=low |
* The "Doh, missed a soname change" release. |
* debian/libspf2-0.install: Rename to libspf2-2.install. |
* debian/control: |
- Change libspf2-0 to libspf2-2 to reflect soname change. |
(Closes: #306205) |
- Add spfquery package, don't package spfd for now, can't figure |
out how to make it work. This partially addresses #258360. |
* debian/spfquery.install: New file. |
-- Eric Dorland <eric@debian.org> Mon, 25 Apr 2005 20:07:48 -0400 |
libspf2 (1.2.5-1) unstable; urgency=low |
* New upstream release. |
-- Eric Dorland <eric@debian.org> Sun, 17 Apr 2005 23:37:27 -0400 |
libspf2 (1.0.4-4) unstable; urgency=medium |
* configure, aclocal.m4: Run aclocal and autoconf to get the right code |
for the libtool test to use the pass_all method on arm. (Closes: |
#276516) |
* Urgency medium to get this bloody thing fixed already. |
-- Eric Dorland <eric@debian.org> Fri, 26 Nov 2004 00:15:04 -0500 |
libspf2 (1.0.4-3) unstable; urgency=low |
* config/ltmain.sh: Re-libtoolize again, hopefully this will fix arm |
building. |
-- Eric Dorland <eric@debian.org> Wed, 17 Nov 2004 13:50:50 -0500 |
libspf2 (1.0.4-2) unstable; urgency=low |
* config/ltmain.sh: Re-libtoolize. (Closes: #269936) |
* configure.ac: Apply patch from Kurt Roeckx to fix build on |
amd64. (Closes: #262687) |
* Rerun autoconf to apply the changes. |
-- Eric Dorland <eric@debian.org> Mon, 6 Sep 2004 19:36:20 -0400 |
libspf2 (1.0.4-1) unstable; urgency=low |
* New upstream release. (Closes: #261709) |
-- Eric Dorland <eric@debian.org> Mon, 9 Aug 2004 00:57:49 -0400 |
libspf2 (1.0.3-1) unstable; urgency=low |
* Initial release. (Closes: #257644) |
-- Eric Dorland <eric@debian.org> Fri, 2 Jul 2004 00:00:19 -0400 |
/tags/1.2.5.dfsg-5/debian/patches/42_empty_sender.dpatch |
---|
0,0 → 1,33 |
#!/bin/sh /usr/share/dpatch/dpatch-run |
## 42_empty_sender.dpatch by Magnus Holmgren <magnus@kibibyte.se> |
## |
## DP: If SPF_request_set_env_from() is called with from set to the empty |
## DP: string (i.e. a DSN), use the HELO identity. Also fix incorrect |
## DP: handling when the local part is empty (but the "@" is present). |
@DPATCH@ |
diff -urNad trunk~/src/libspf2/spf_request.c trunk/src/libspf2/spf_request.c |
--- trunk~/src/libspf2/spf_request.c 2005-02-22 03:38:57.000000000 +0100 |
+++ trunk/src/libspf2/spf_request.c 2007-07-30 21:58:48.000000000 +0200 |
@@ -142,14 +142,19 @@ |
SPF_FREE(sr->env_from_lp); |
SPF_FREE(sr->env_from_dp); |
+ if (*from == '\0' && sr->helo_dom != NULL) { |
+ from = sr->helo_dom; |
+ } |
cp = strrchr(from, '@'); |
if (cp && (cp != from)) { |
sr->env_from = strdup(from); |
- sr->env_from_lp = strdup(from); /* Too long, but simple */ |
- sr->env_from_lp[(cp - from)] = '\0'; |
+ *cp = '\0'; |
+ sr->env_from_lp = strdup(from); |
sr->env_from_dp = strdup(cp + 1); |
+ *cp = '@'; |
} |
else { |
+ if (cp == from) from++; /* "@domain.example" */ |
len = sizeof("postmaster@") + strlen(from); |
sr->env_from = malloc(len + 1); /* sizeof("") == 1? */ |
sprintf(sr->env_from, "postmaster@%s", from); |
/tags/1.2.5.dfsg-5/debian/patches/43_new_explanation_url.dpatch |
---|
0,0 → 1,20 |
#! /bin/sh /usr/share/dpatch/dpatch-run |
## 43_new_explanation_url.dpatch by <magnus@proffe.kibibyte.se> |
## |
## All lines beginning with `## DP:' are a description of the patch. |
## DP: Bring default explanation up to date by referring to |
## DP: www.openspf.org instead of spf.pobox.com. |
@DPATCH@ |
diff -urNad trunk~/src/include/spf.h trunk/src/include/spf.h |
--- trunk~/src/include/spf.h 2007-09-06 13:57:32.000000000 +0200 |
+++ trunk/src/include/spf.h 2007-09-06 13:58:59.000000000 +0200 |
@@ -57,7 +57,7 @@ |
#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://spf.pobox.com/why.html?sender=%{S}&ip=%{C}&receiver=%{R}" |
+#define SPF_DEFAULT_EXP "Please see http://www.openspf.org/Why?id=%{S}&ip=%{C}&receiver=%{R}" |
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/patches/00list |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/00list (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/00list (revision 27) |
@@ -0,0 +1,16 @@ |
+#01_line-endings |
+02_wrong_lib_version_h |
+20_64bit_types |
+20_printf_types |
+20_spf_dns_include_std_headers |
+20_spf_server_unnecessary_include |
+21_spfquery_infininte_loop |
+22_spfquery_fallback_segfault |
+23_spfquery_ipv6 |
+25_maxvals |
+30_spfd_check_unlink_failure |
+35_untabify_help |
+40_permanent_include_errors |
+41_none_not_neutral |
+42_empty_sender |
+43_new_explanation_url |
Index: 1.2.5.dfsg-5/debian/patches/35_untabify_help.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/35_untabify_help.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/35_untabify_help.dpatch (revision 27) |
@@ -0,0 +1,25 @@ |
+#!/bin/sh |
+## 35_untabify_help.dpatch by Magnus Holmgren <magnus@kibibyte.se> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Tidy up --help messages by converting tabs to four spaces (" "). |
+ |
+FILES_TO_PROCESS="src/spfquery/spfquery.c |
+ src/spftest/spftest.c |
+ src/spf_example/spf_example.c" |
+ |
+dpatch_patch() { |
+ # Change line endings to LF in files with CRLF |
+ perl -pi -e 's/("[^"]*?)\t/$1 / and redo;' $FILES_TO_PROCESS |
+} |
+ |
+dpatch_unpatch() { |
+ # Change line endings back to CRLF in files that had it in the tarball |
+ # Unfortunately there are exceptions ... have to watch out for changes |
+ # in future upstream versions (or simply make backups instead). |
+ perl -pi -e 's/("[^"]*?) /$1\t/ and redo;' $FILES_TO_PROCESS |
+} |
+ |
+DPATCH_LIB_NO_DEFAULT=1 |
+ |
+. /usr/share/dpatch/dpatch.lib.sh |
Index: 1.2.5.dfsg-5/debian/patches/23_spfquery_ipv6.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/23_spfquery_ipv6.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/23_spfquery_ipv6.dpatch (revision 27) |
@@ -0,0 +1,20 @@ |
+#! /bin/sh /usr/share/dpatch/dpatch-run |
+## 23_spfquery_ipv6.dpatch by Matthias Cramer <matthias.cramer@interway.ch> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Make spfquery accept IPv6 addresses |
+ |
+@DPATCH@ |
+ |
+--- libspf2-1.2.5.orig/src/spfquery/spfquery.c 2005-02-22 03:36:55.000000000 +0100 |
++++ libspf2-1.2.5.dfsg/src/spfquery/spfquery.c 2007-08-30 09:39:32.000000000 +0200 |
+@@ -604,7 +602,8 @@ |
+ |
+ spf_request = SPF_request_new(spf_server); |
+ |
+- if (SPF_request_set_ipv4_str(spf_request, req->ip)) { |
++ if (SPF_request_set_ipv4_str(spf_request, req->ip) |
++ && SPF_request_set_ipv6_str(spf_request, req->ip)) { |
+ printf( "Invalid IP address.\n" ); |
+ CONTINUE_ERROR; |
+ |
Index: 1.2.5.dfsg-5/debian/patches/22_spfquery_fallback_segfault.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/22_spfquery_fallback_segfault.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/22_spfquery_fallback_segfault.dpatch (revision 27) |
@@ -0,0 +1,45 @@ |
+#! /bin/sh /usr/share/dpatch/dpatch-run |
+## 22_spfquery_fallback_segfault.dpatch by Robert Millan <rmh@aybabtu.com> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Fix segfault with malformed -guess argument |
+ |
+@DPATCH@ |
+ |
+diff -ur libspf2-1.2.5.dfsg.old/src/spfquery/spfquery.c libspf2-1.2.5.dfsg/src/spfquery/spfquery.c |
+--- libspf2-1.2.5.dfsg.old/src/spfquery/spfquery.c 2005-02-22 03:36:55.000000000 +0100 |
++++ libspf2-1.2.5.dfsg/src/spfquery/spfquery.c 2007-06-24 13:17:34.000000000 +0200 |
+@@ -341,6 +341,7 @@ |
+ SPF_request_t *spf_request = NULL; |
+ SPF_response_t *spf_response = NULL; |
+ SPF_response_t *spf_response_2mx = NULL; |
++ SPF_response_t *spf_response_fallback = NULL; |
+ SPF_errcode_t err; |
+ |
+ char *opt_file = NULL; |
+@@ -670,20 +671,20 @@ |
+ /* We now have an option to call SPF_request_query_fallback */ |
+ if (opts->fallback) { |
+ err = SPF_request_query_fallback(spf_request, |
+- &spf_response, opts->fallback); |
++ &spf_response_fallback, opts->fallback); |
+ if (opts->debug) |
+- response_print("fallback query", spf_response_2mx); |
++ response_print("fallback query", spf_response_fallback); |
+ if (err) { |
+ response_print_errors("Failed to query best-guess", |
+- spf_response, err); |
++ spf_response_fallback, err); |
+ CONTINUE_ERROR; |
+ } |
+ |
+ /* append the result */ |
+- APPEND_RESULT(SPF_response_result(spf_response_2mx)); |
++ APPEND_RESULT(SPF_response_result(spf_response_fallback)); |
+ |
+ spf_response = SPF_response_combine(spf_response, |
+- spf_response_2mx); |
++ spf_response_fallback); |
+ } |
+ |
+ printf( "%s\n%s\n%s\n%s\n", |
Index: 1.2.5.dfsg-5/debian/patches/41_none_not_neutral.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/41_none_not_neutral.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/41_none_not_neutral.dpatch (revision 27) |
@@ -0,0 +1,48 @@ |
+#!/bin/sh /usr/share/dpatch/dpatch-run |
+## 41_none_not_neutral.dpatch by Robert Millan <rmh@aybabtu.com>, edited by Magnus Holmgren |
+## |
+## DP: Differentiate between SPF_RESULT_NONE and |
+## DP: SPF_RESULT_NEUTRAL in the header comment. |
+ |
+@DPATCH@ |
+ |
+diff -ur libspf2-1.2.5.dfsg.old/src/libspf2/spf_interpret.c libspf2-1.2.5.dfsg/src/libspf2/spf_interpret.c |
+--- libspf2-1.2.5.dfsg.old/src/libspf2/spf_interpret.c 2005-02-22 04:41:27.000000000 +0100 |
++++ libspf2-1.2.5.dfsg/src/libspf2/spf_interpret.c 2007-07-01 01:03:17.000000000 +0200 |
+@@ -214,11 +226,15 @@ |
+ break; |
+ |
+ case SPF_RESULT_NEUTRAL: |
+- case SPF_RESULT_NONE: |
+ snprintf( p, p_end - p, "%s is neither permitted nor denied by %s", |
+ ip, spf_source ); |
+ break; |
+ |
++ case SPF_RESULT_NONE: |
++ snprintf( p, p_end - p, "%s does not provide an SPF record", |
++ spf_source ); |
++ break; |
++ |
+ case SPF_RESULT_TEMPERROR: |
+ snprintf( p, p_end - p, "encountered temporary error during SPF processing of %s", |
+ spf_source ); |
+diff -ur libspf2-1.2.5.dfsg.old/src/libspf2/spf_result.c libspf2-1.2.5.dfsg/src/libspf2/spf_result.c |
+--- libspf2-1.2.5.dfsg.old/src/libspf2/spf_result.c 2004-08-10 15:04:02.000000000 +0200 |
++++ libspf2-1.2.5.dfsg/src/libspf2/spf_result.c 2007-07-01 01:03:29.000000000 +0200 |
+@@ -187,11 +197,15 @@ |
+ break; |
+ |
+ case SPF_RESULT_NEUTRAL: |
+- case SPF_RESULT_NONE: |
+ snprintf( p, p_end - p, "%s is neither permitted nor denied by %s", |
+ ip, spf_source ); |
+ break; |
+ |
++ case SPF_RESULT_NONE: |
++ snprintf( p, p_end - p, "%s does not provide an SPF record", |
++ spf_source ); |
++ break; |
++ |
+ case SPF_RESULT_ERROR: |
+ snprintf( p, p_end - p, "encountered temporary error during SPF processing of %s", |
+ spf_source ); |
Index: 1.2.5.dfsg-5/debian/patches/40_permanent_include_errors.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/40_permanent_include_errors.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/40_permanent_include_errors.dpatch (revision 27) |
@@ -0,0 +1,23 @@ |
+#!/bin/sh /usr/share/dpatch/dpatch-run |
+## 40_permanent_include_errors.dpatch by Robert Millan <rmh@aybabtu.com>, edited by Magnus Holmgren |
+## |
+## DP: Permanent error when processing an include: directive should in turn |
+## DP: produce permanent error (see the table in RFC 4408 / section 5.2). |
+ |
+@DPATCH@ |
+ |
+diff -ur libspf2-1.2.5.dfsg.old/src/libspf2/spf_interpret.c libspf2-1.2.5.dfsg/src/libspf2/spf_interpret.c |
+--- libspf2-1.2.5.dfsg.old/src/libspf2/spf_interpret.c 2005-02-22 04:41:27.000000000 +0100 |
++++ libspf2-1.2.5.dfsg/src/libspf2/spf_interpret.c 2007-07-01 01:03:17.000000000 +0200 |
+@@ -1022,7 +1042,10 @@ |
+ if (spf_record_subr) |
+ SPF_record_free(spf_record_subr); |
+ SPF_FREE_LOOKUP_DATA(); |
+- return DONE_TEMPERR( err ); |
++ if (err == SPF_E_DNS_ERROR) |
++ return DONE_TEMPERR( err ); |
++ else |
++ return DONE_PERMERR( err ); |
+ } |
+ |
+ /* |
Index: 1.2.5.dfsg-5/debian/patches/20_printf_types.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/20_printf_types.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/20_printf_types.dpatch (revision 27) |
@@ -0,0 +1,64 @@ |
+#! /bin/sh /usr/share/dpatch/dpatch-run |
+## 20_printf_types.dpatch by Magnus Holmgren <magnus@kibibyte.se> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Change the format strings of various calls to printf-style functions to |
+## DP: match the arguments. |
+ |
+@DPATCH@ |
+diff -urNad libspf2-1.2.5.dfsg~/src/libspf2/spf_compile.c libspf2-1.2.5.dfsg/src/libspf2/spf_compile.c |
+--- libspf2-1.2.5.dfsg~/src/libspf2/spf_compile.c 2007-03-27 14:28:00.931960929 +0200 |
++++ libspf2-1.2.5.dfsg/src/libspf2/spf_compile.c 2007-03-27 14:30:04.000000000 +0200 |
+@@ -470,7 +470,7 @@ |
+ len = end - p; |
+ if (spf_server->debug) |
+ SPF_debugf("Adding string literal (%d): '%*.*s'", |
+- len, len, len, p); |
++ (int)len, (int)len, (int)len, p); |
+ memcpy( dst, p, len ); |
+ ds_len += len; |
+ dst += len; |
+diff -urNad libspf2-1.2.5.dfsg~/src/libspf2/spf_id2str.c libspf2-1.2.5.dfsg/src/libspf2/spf_id2str.c |
+--- libspf2-1.2.5.dfsg~/src/libspf2/spf_id2str.c 2007-03-27 14:27:58.171600935 +0200 |
++++ libspf2-1.2.5.dfsg/src/libspf2/spf_id2str.c 2007-03-27 14:30:51.000000000 +0200 |
+@@ -309,7 +309,7 @@ |
+ p_end = *bufp + *buflenp; |
+ |
+ if (debug) |
+- SPF_debugf("stringify: Buffer length is %d\n", *buflenp); |
++ SPF_debugf("stringify: Buffer length is %u\n", (unsigned int)*buflenp); |
+ |
+ |
+ /* |
+diff -urNad libspf2-1.2.5.dfsg~/src/libspf2/spf_print.c libspf2-1.2.5.dfsg/src/libspf2/spf_print.c |
+--- libspf2-1.2.5.dfsg~/src/libspf2/spf_print.c 2007-03-27 14:27:58.231608763 +0200 |
++++ libspf2-1.2.5.dfsg/src/libspf2/spf_print.c 2007-03-27 14:47:39.000000000 +0200 |
+@@ -54,12 +54,12 @@ |
+ return SPF_E_SUCCESS; |
+ } |
+ |
+- SPF_infof( "SPF header: version: %d mech %d/%d mod %d/%d len=%d", |
++ SPF_infof( "SPF header: version: %d mech %d/%u mod %d/%u len=%u", |
+ spf_record->version, |
+- spf_record->num_mech, spf_record->mech_len, |
+- spf_record->num_mod, spf_record->mod_len, |
+- sizeof(SPF_record_t) + spf_record->mech_len |
+- + spf_record->mod_len); |
++ (int)spf_record->num_mech, (unsigned int)spf_record->mech_len, |
++ (int)spf_record->num_mod, (unsigned int)spf_record->mod_len, |
++ (unsigned int)(sizeof(SPF_record_t) + spf_record->mech_len |
++ + spf_record->mod_len)); |
+ |
+ err = SPF_record_stringify(spf_record, &prt_buf, &prt_len); |
+ if ( err == SPF_E_RESULT_UNKNOWN ) |
+@@ -81,7 +81,7 @@ |
+ void SPF_print_sizeof(void) |
+ { |
+ // SPF_infof( "sizeof(SPF_rec_header_t)=%u", sizeof(SPF_rec_header_t)); |
+- SPF_infof( "sizeof(SPF_mech_t)=%u", sizeof(SPF_mech_t)); |
+- SPF_infof( "sizeof(SPF_data_t)=%u", sizeof(SPF_data_t)); |
+- SPF_infof( "sizeof(SPF_mod_t)=%u", sizeof(SPF_mod_t)); |
++ SPF_infof( "sizeof(SPF_mech_t)=%u", (unsigned int)sizeof(SPF_mech_t)); |
++ SPF_infof( "sizeof(SPF_data_t)=%u", (unsigned int)sizeof(SPF_data_t)); |
++ SPF_infof( "sizeof(SPF_mod_t)=%u", (unsigned int)sizeof(SPF_mod_t)); |
+ } |
/1.2.5.dfsg-5/debian/patches/20_printf_types.dpatch |
---|
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/patches/01_line-endings.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/01_line-endings.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/01_line-endings.dpatch (revision 27) |
@@ -0,0 +1,30 @@ |
+#!/bin/sh |
+## 01_line-endings.dpatch by Magnus Holmgren <magnus@kibibyte.se> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Convert CRLF line endings to LF in certain Windows-related files |
+ |
+FILES_WITH_CRLF="src/libspf2/spf_dns_windns.c |
+ src/libspf2/spf_win32.c |
+ src/libreplace/win32_config.h |
+ src/include/spf_dns_windns.h |
+ src/include/spf_win32.h" |
+ |
+set -e |
+ |
+dpatch_patch() { |
+ if [ ! -f debian/patched/patched-line-endings.tar.gz ]; then |
+ tar -czf debian/patched/patched-line-endings.tar.gz $FILES_WITH_CRLF |
+ # Change line endings to LF in files with CRLF |
+ sed -ri -e 's/\r$//' $FILES_WITH_CRLF |
+ fi |
+} |
+ |
+dpatch_unpatch() { |
+ # Change line endings back to CRLF in files that had it in the tarball |
+ tar -xzf debian/patched/patched-line-endings.tar.gz |
+} |
+ |
+DPATCH_LIB_NO_DEFAULT=1 |
+ |
+. /usr/share/dpatch/dpatch.lib.sh |
/1.2.5.dfsg-5/debian/patches/01_line-endings.dpatch |
---|
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/patches/21_spfquery_infininte_loop.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/21_spfquery_infininte_loop.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/21_spfquery_infininte_loop.dpatch (revision 27) |
@@ -0,0 +1,21 @@ |
+#! /bin/sh /usr/share/dpatch/dpatch-run |
+## 21_spfquery_infininte_loop.dpatch by Magnus Holmgren <magnus@kibibyte.se> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Fix infinite loop in spfquery.c:unimplemented(). |
+ |
+@DPATCH@ |
+diff -urNad libspf2-1.2.5.dfsg~/src/spfquery/spfquery.c libspf2-1.2.5.dfsg/src/spfquery/spfquery.c |
+--- libspf2-1.2.5.dfsg~/src/spfquery/spfquery.c 2005-02-22 03:36:55.000000000 +0100 |
++++ libspf2-1.2.5.dfsg/src/spfquery/spfquery.c 2007-03-24 22:28:15.000000000 +0100 |
+@@ -174,9 +174,7 @@ |
+ struct option *opt; |
+ int i; |
+ |
+- i = 0; |
+- opt = &long_options[i]; |
+- while (opt->name) { |
++ for (i = 0; (opt = &long_options[i])->name; i++) { |
+ if (flag == opt->val) { |
+ fprintf(stderr, "Unimplemented option: -%s or -%c\n", |
+ opt->name, flag); |
/1.2.5.dfsg-5/debian/patches/21_spfquery_infininte_loop.dpatch |
---|
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/patches/20_64bit_types.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/20_64bit_types.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/20_64bit_types.dpatch (revision 27) |
@@ -0,0 +1,105 @@ |
+#! /bin/sh /usr/share/dpatch/dpatch-run |
+## 20_64bit_types.dpatch by Magnus Holmgren <magnus@kibibyte.se> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Change various ints to size_t etc, to avoid crashes on 64-bit |
+## DP: architectures. |
+ |
+@DPATCH@ |
+ |
+diff -Nur libspf2-1.2.5.dfsg/src/include/spf_internal.h libspf2-1.2.5.dfsg.new/src/include/spf_internal.h |
+--- libspf2-1.2.5.dfsg/src/include/spf_internal.h 2007-03-23 22:37:26.000000000 +0100 |
++++ libspf2-1.2.5.dfsg.new/src/include/spf_internal.h 2007-03-23 23:08:54.000000000 +0100 |
+@@ -71,7 +71,7 @@ |
+ static inline size_t _align_sz(size_t s) |
+ { return (s + (_ALIGN_SZ - 1 - (((s - 1) & (_ALIGN_SZ - 1))))); } |
+ static inline char * _align_ptr(char *s) |
+- { return (s + (_ALIGN_SZ - 1 - ((((unsigned int)s - 1) & (_ALIGN_SZ - 1))))); } |
++ { return (s + (_ALIGN_SZ - 1 - ((((size_t)s - 1) & (_ALIGN_SZ - 1))))); } |
+ #else |
+ static inline size_t _align_sz(size_t s) { return s; } |
+ static inline char * _align_ptr(char *s) { return s; } |
+diff -Nur libspf2-1.2.5.dfsg/src/include/spf_record.h libspf2-1.2.5.dfsg.new/src/include/spf_record.h |
+--- libspf2-1.2.5.dfsg/src/include/spf_record.h 2007-03-23 22:37:26.000000000 +0100 |
++++ libspf2-1.2.5.dfsg.new/src/include/spf_record.h 2007-03-23 23:08:54.000000000 +0100 |
+@@ -224,7 +224,7 @@ |
+ |
+ struct SPF_macro_struct |
+ { |
+- unsigned int macro_len; /* bytes of data */ |
++ size_t macro_len; /* bytes of data */ |
+ /* data: (SPF_data_t[] = char[macro_len]) follows */ |
+ }; |
+ |
+diff -Nur libspf2-1.2.5.dfsg/src/libspf2/spf_compile.c libspf2-1.2.5.dfsg.new/src/libspf2/spf_compile.c |
+--- libspf2-1.2.5.dfsg/src/libspf2/spf_compile.c 2007-03-23 22:37:26.000000000 +0100 |
++++ libspf2-1.2.5.dfsg.new/src/libspf2/spf_compile.c 2007-03-23 23:18:41.000000000 +0100 |
+@@ -98,7 +98,7 @@ |
+ } |
+ |
+ static void |
+-SPF_c_ensure_capacity(void **datap, int *sizep, int length) |
++SPF_c_ensure_capacity(void **datap, size_t *sizep, int length) |
+ { |
+ int size = *sizep; |
+ if (length > size) |
+@@ -435,7 +435,7 @@ |
+ static SPF_errcode_t |
+ SPF_c_parse_macro(SPF_server_t *spf_server, |
+ SPF_response_t *spf_response, |
+- SPF_data_t *data, int *data_len, |
++ SPF_data_t *data, size_t *data_len, |
+ const char **startp, const char **endp, |
+ size_t max_len, SPF_errcode_t big_err, |
+ int is_mod) |
+@@ -551,10 +551,10 @@ |
+ static SPF_errcode_t |
+ SPF_c_parse_domainspec(SPF_server_t *spf_server, |
+ SPF_response_t *spf_response, |
+- SPF_data_t *data, int *data_len, |
++ SPF_data_t *data, size_t *data_len, |
+ const char **startp, const char **endp, |
+ size_t max_len, SPF_errcode_t big_err, |
+- int cidr_ok, int is_mod) |
++ SPF_cidr_t cidr_ok, int is_mod) |
+ { |
+ SPF_errcode_t err; |
+ /* Generic parsing iterators and boundaries */ |
+diff -Nur libspf2-1.2.5.dfsg/src/libspf2/spf_dns_resolv.c libspf2-1.2.5.dfsg.new/src/libspf2/spf_dns_resolv.c |
+--- libspf2-1.2.5.dfsg/src/libspf2/spf_dns_resolv.c 2007-03-23 22:37:26.000000000 +0100 |
++++ libspf2-1.2.5.dfsg.new/src/libspf2/spf_dns_resolv.c 2007-03-23 23:08:54.000000000 +0100 |
+@@ -393,7 +393,7 @@ |
+ if ( SPF_dns_rr_buf_realloc( spfrr, cnt, rdlen ) != SPF_E_SUCCESS ) |
+ return spfrr; |
+ |
+- dst = spfrr->rr[cnt]->txt; |
++ dst = (u_char *)(spfrr->rr[cnt]->txt); |
+ len = 0; |
+ src = (u_char *)rdata; |
+ while ( rdlen > 0 ) |
+diff -Nur libspf2-1.2.5.dfsg/src/libspf2/spf_interpret.c libspf2-1.2.5.dfsg.new/src/libspf2/spf_interpret.c |
+--- libspf2-1.2.5.dfsg/src/libspf2/spf_interpret.c 2007-03-23 22:37:26.000000000 +0100 |
++++ libspf2-1.2.5.dfsg.new/src/libspf2/spf_interpret.c 2007-03-23 23:20:30.000000000 +0100 |
+@@ -49,8 +49,8 @@ |
+ SPF_record_t *spf_record; |
+ SPF_errcode_t err; |
+ char *buf; |
+- int buflen; |
+- int len; |
++ size_t buflen; |
++ size_t len; |
+ |
+ SPF_ASSERT_NOTNULL(spf_response); |
+ spf_request = spf_response->spf_request; |
+diff -Nur libspf2-1.2.5.dfsg/src/spfd/spfd.c libspf2-1.2.5.dfsg.new/src/spfd/spfd.c |
+--- libspf2-1.2.5.dfsg/src/spfd/spfd.c 2007-03-23 22:37:26.000000000 +0100 |
++++ libspf2-1.2.5.dfsg.new/src/spfd/spfd.c 2007-03-23 23:08:54.000000000 +0100 |
+@@ -168,7 +168,7 @@ |
+ struct sockaddr_in in; |
+ struct sockaddr_un un; |
+ } addr; |
+- int addrlen; |
++ socklen_t addrlen; |
+ char *data; |
+ int datalen; |
+ |
/1.2.5.dfsg-5/debian/patches/20_64bit_types.dpatch |
---|
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/patches/02_wrong_lib_version_h.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/02_wrong_lib_version_h.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/02_wrong_lib_version_h.dpatch (revision 27) |
@@ -0,0 +1,30 @@ |
+#!/bin/sh |
+## 02_wrong_lib_version_h.dpatch by Magnus Holmgren <magnus@kibibyte.se> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Move static spf_lib_version.h out of the way and patch configure to put |
+## DP: the autogenerated one in the right place. |
+ |
+set -e |
+ |
+lib_version_h=src/include/spf_lib_version.h |
+ |
+dpatch_patch() { |
+ # Update configure script so that it writes to the right .h file |
+ test -e configure.old || \ |
+ sed -ri.old -e 's%src/libspf2/spf_lib_version%src/include/spf_lib_version%' configure |
+ # Move the bad .h file out of the way |
+ test -e $lib_version_h.old || mv -f $lib_version_h $lib_version_h.old |
+} |
+ |
+dpatch_unpatch() { |
+ # Move the bad .h file back to its position |
+ if test -e $lib_version_h.old; then mv -f $lib_version_h.old $lib_version_h; fi |
+ # Move the original configure script back |
+ if test -e configure.old; then mv -f configure.old configure; fi |
+} |
+ |
+ |
+DPATCH_LIB_NO_DEFAULT=1 |
+ |
+. /usr/share/dpatch/dpatch.lib.sh |
/1.2.5.dfsg-5/debian/patches/02_wrong_lib_version_h.dpatch |
---|
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/patches/20_spf_server_unnecessary_include.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/20_spf_server_unnecessary_include.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/20_spf_server_unnecessary_include.dpatch (revision 27) |
@@ -0,0 +1,18 @@ |
+#! /bin/sh /usr/share/dpatch/dpatch-run |
+## 20_spf_server_unnecessary_include.dpatch by Magnus Holmgren <magnus@kibibyte.se> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: src/include/spf_server.h: Remove useless include of spf_dns_internal.h. |
+ |
+@DPATCH@ |
+ |
+--- libspf2-1.2.5.dfsg.orig/src/include/spf_server.h |
++++ libspf2-1.2.5.dfsg/src/include/spf_server.h |
+@@ -20,7 +20,6 @@ |
+ |
+ #include "spf_record.h" |
+ #include "spf_dns.h" |
+-#include "spf_dns_internal.h" |
+ |
+ #ifndef SPF_MAX_DNS_MECH |
+ /* It is a bad idea to change this for two reasons. |
/1.2.5.dfsg-5/debian/patches/20_spf_server_unnecessary_include.dpatch |
---|
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/patches/25_maxvals.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/25_maxvals.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/25_maxvals.dpatch (revision 27) |
@@ -0,0 +1,61 @@ |
+#! /bin/sh /usr/share/dpatch/dpatch-run |
+## 25_maxvals.dpatch by Thomas Jacob <jacob@internet24.de> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Bring certain processing limits (meant to mitigate DoS attacks) in line |
+## DP: with RFC 4408. |
+ |
+@DPATCH@ |
+ |
+diff -ruN libspf2-1.2.5/src/include/spf.h libspf2-1.2.5.patched/src/include/spf.h |
+--- libspf2-1.2.5/src/include/spf.h 2005-02-17 01:56:55.000000000 +0100 |
++++ libspf2-1.2.5.patched/src/include/spf.h 2007-03-14 16:58:21.000000000 +0100 |
+@@ -52,8 +52,8 @@ |
+ |
+ /* FYI only -- defaults can't be changed without recompiling the library */ |
+ #define SPF_DEFAULT_MAX_DNS_MECH 10 /* DoS limit on SPF mechanisms */ |
+-#define SPF_DEFAULT_MAX_DNS_PTR 5 /* DoS limit on PTR records */ |
+-#define SPF_DEFAULT_MAX_DNS_MX 5 /* DoS limit on MX records */ |
++#define SPF_DEFAULT_MAX_DNS_PTR 10 /* DoS limit on PTR records */ |
++#define SPF_DEFAULT_MAX_DNS_MX 10 /* DoS limit on MX records */ |
+ #define SPF_DEFAULT_SANITIZE 1 |
+ #define SPF_DEFAULT_WHITELIST "include:spf.trusted-forwarder.org" |
+ #define SPF_EXP_MOD_NAME "exp-text" |
+diff -ruN libspf2-1.2.5/src/include/spf_internal.h libspf2-1.2.5.patched/src/include/spf_internal.h |
+--- libspf2-1.2.5/src/include/spf_internal.h 2005-02-24 05:10:49.000000000 +0100 |
++++ libspf2-1.2.5.patched/src/include/spf_internal.h 2007-03-14 16:58:04.000000000 +0100 |
+@@ -57,13 +57,13 @@ |
+ /* It is a bad idea to change this for the same reasons as mentioned |
+ * above for SPF_MAX_DNS_MECH |
+ */ |
+-#define SPF_MAX_DNS_PTR 5 |
++#define SPF_MAX_DNS_PTR 10 |
+ #endif |
+ #ifndef SPF_MAX_DNS_MX |
+ /* It is a bad idea to change this for the same reasons as mentioned |
+ * above for SPF_MAX_DNS_MECH |
+ */ |
+-#define SPF_MAX_DNS_MX 5 |
++#define SPF_MAX_DNS_MX 10 |
+ #endif |
+ |
+ #if 1 |
+diff -ruN libspf2-1.2.5/src/include/spf_server.h libspf2-1.2.5.patched/src/include/spf_server.h |
+--- libspf2-1.2.5/src/include/spf_server.h 2004-09-29 12:33:09.000000000 +0200 |
++++ libspf2-1.2.5.patched/src/include/spf_server.h 2007-03-14 16:58:54.000000000 +0100 |
+@@ -44,13 +44,13 @@ |
+ /* It is a bad idea to change this for the same reasons as mentioned |
+ * above for SPF_MAX_DNS_MECH |
+ */ |
+-#define SPF_MAX_DNS_PTR 5 |
++#define SPF_MAX_DNS_PTR 10 |
+ #endif |
+ #ifndef SPF_MAX_DNS_MX |
+ /* It is a bad idea to change this for the same reasons as mentioned |
+ * above for SPF_MAX_DNS_MECH |
+ */ |
+-#define SPF_MAX_DNS_MX 5 |
++#define SPF_MAX_DNS_MX 10 |
+ #endif |
+ |
+ struct SPF_server_struct { |
/1.2.5.dfsg-5/debian/patches/25_maxvals.dpatch |
---|
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/patches/30_spfd_check_unlink_failure.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/30_spfd_check_unlink_failure.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/30_spfd_check_unlink_failure.dpatch (revision 27) |
@@ -0,0 +1,20 @@ |
+#! /bin/sh /usr/share/dpatch/dpatch-run |
+## 30_spfd_check_unlink_failure.dpatch by Thomas Jacob <jacob@internet24.de> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Fix a call to unlink() in spfd.c. It passed 'path < 0' as the argument |
+## DP: instead of checking whether the return value < 0. |
+ |
+@DPATCH@ |
+ |
+--- libspf2-1.2.5/src/spfd/spfd.c 2005-02-19 03:40:35.000000000 +0100 |
++++ libspf2-1.2.5-amd64/src/spfd/spfd.c 2007-03-08 21:17:09.000000000 +0100 |
+@@ -640,7 +640,7 @@ |
+ memset(&addr, 0, sizeof(addr)); |
+ addr.sun_family = AF_UNIX; |
+ strcpy(addr.sun_path, spfd_config.path); |
+- if (unlink(spfd_config.path < 0)) { |
++ if (unlink(spfd_config.path) < 0) { |
+ if (errno != ENOENT) { |
+ perror("unlink"); |
+ DIE("Failed to unlink socket"); |
/1.2.5.dfsg-5/debian/patches/30_spfd_check_unlink_failure.dpatch |
---|
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/patches/20_spf_dns_include_std_headers.dpatch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/patches/20_spf_dns_include_std_headers.dpatch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/patches/20_spf_dns_include_std_headers.dpatch (revision 27) |
@@ -0,0 +1,60 @@ |
+#! /bin/sh /usr/share/dpatch/dpatch-run |
+## 20_spf_dns_include_std_headers.dpatch by Magnus Holmgren <magnus@kibibyte.se> |
+## |
+## All lines beginning with `## DP:' are a description of the patch. |
+## DP: Include arpa/nameser.h and netdb.h from spf_dns.h instead of defining |
+## DP: the constants needed unless certain HAVE_ macros are defined. |
+ |
+@DPATCH@ |
+ |
+diff -Nur libspf2-1.2.5.dfsg/src/include/spf_dns.h libspf2-1.2.5.dfsg.new/src/include/spf_dns.h |
+--- libspf2-1.2.5.dfsg/src/include/spf_dns.h 2004-08-29 16:59:33.000000000 +0200 |
++++ libspf2-1.2.5.dfsg.new/src/include/spf_dns.h 2007-03-23 18:04:17.000000000 +0100 |
+@@ -61,43 +61,12 @@ |
+ * |
+ */ |
+ |
+- |
+-/* |
+- * For those who don't have <arpa/nameserv.h> |
++/* The following two header files might not exist on all platforms, |
++ * but at least they exist on Debian with libc6. |
+ */ |
++#include <arpa/nameser.h> |
++#include <netdb.h> |
+ |
+-#if !defined( HAVE_NS_TYPE ) |
+- |
+-#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_a6 38 */ |
+-#define ns_t_any 255 /* Wildcard match. */ |
+- |
+-typedef int ns_type; |
+-#endif |
+- |
+-#ifndef ns_t_invalid |
+-#define ns_t_invalid 0 |
+-#endif |
+- |
+- |
+-/* |
+- * For those who don't have <netdb.h> |
+- */ |
+- |
+-#if !defined(HAVE_NETDB_H) && !defined(_WIN32) |
+-#define NETDB_SUCCESS 0 |
+-#define HOST_NOT_FOUND 1 /* NXDOMAIN (authoritative answer)*/ |
+-#define TRY_AGAIN 2 /* SERVFAIL (no authoritative answer)*/ |
+-#define NO_RECOVERY 3 /* invalid/unimplmeneted query */ |
+-#define NO_DATA 4 /* host found, but no RR of req type*/ |
+-#endif |
+ typedef int SPF_dns_stat_t; |
+ |
+ typedef struct SPF_dns_server_struct SPF_dns_server_t; |
/1.2.5.dfsg-5/debian/patches/20_spf_dns_include_std_headers.dpatch |
---|
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/spfquery.postinst |
=================================================================== |
--- 1.2.5.dfsg-5/debian/spfquery.postinst (nonexistent) |
+++ 1.2.5.dfsg-5/debian/spfquery.postinst (revision 27) |
@@ -0,0 +1,17 @@ |
+#!/bin/sh -e |
+ |
+mode=$1 |
+ |
+source_package=libspf2 |
+ |
+case "$mode" in |
+ configure ) |
+ prev_version=$2 |
+ |
+ update-alternatives --install /usr/bin/spfquery spfquery /usr/bin/spfquery.$source_package 25 \ |
+ --slave /usr/share/man/man1/spfquery.1.gz spfquery.1.gz /usr/share/man/man1/spfquery.$source_package.1.gz |
+ update-alternatives --install /usr/sbin/spfd spfd /usr/sbin/spfd.$source_package 25 |
+ ;; |
+esac |
+ |
+#DEBHELPER# |
Index: 1.2.5.dfsg-5/debian/spfquery.manpages |
=================================================================== |
--- 1.2.5.dfsg-5/debian/spfquery.manpages (nonexistent) |
+++ 1.2.5.dfsg-5/debian/spfquery.manpages (revision 27) |
@@ -0,0 +1 @@ |
+debian/spfquery.libspf2.1 |
Index: 1.2.5.dfsg-5/debian/spfquery.libspf2.1 |
=================================================================== |
--- 1.2.5.dfsg-5/debian/spfquery.libspf2.1 (nonexistent) |
+++ 1.2.5.dfsg-5/debian/spfquery.libspf2.1 (revision 27) |
@@ -0,0 +1,199 @@ |
+.\" Title: SPFQUERY |
+.\" Author: Magnus Holmgren <magnus@kibibyte.se> |
+.\" Date: 2007-09-06 |
+.\" Manual: libspf2 manuals for Debian |
+.\" Source: libspf2 1.2.5 |
+.\" |
+.TH "SPFQUERY" "1" "2007-09-06" "libspf2 1.2.5" "libspf2 manuals for Debian" |
+.\" disable hyphenation |
+.nh |
+.SH NAME |
+spfquery, spfquery.libspf2 \- checks if an IP address is an SPF-authorized SMTP sender for a domain. |
+.SH SYNOPSIS |
+.ad l |
+.HP 9 |
+.B spfquery |
+.RB { \-i | \-\-ip } |
+.I ip\-address |
+.RB { -s | \-\-sender } |
+.RI [ local-part \fB@\fP] domain |
+.RB [{ \-h | \-\-helo } |
+.IR domain-name ] |
+.RB [ \-\-rcpt\-to |
+.IR email-address(es) ] |
+.RI [ CONTROL-OPTIONS ] |
+.HP 9 |
+.B spfquery |
+.RB { \-f | \-\-file } |
+.IR datafile " [" CONTROL-OPTIONS ] |
+.HP 9 |
+.B spfquery |
+.RB { \-\-help | \-v | \-\-version } |
+.ad b |
+.SH DESCRIPTION |
+This manual page documents briefly the |
+\fBspfquery\fR |
+command. It was written for the |
+Debian\*[R] distribution because the original program does not have a manual page. |
+.PP |
+\fBspfquery\fR performs Sender Policy Framework (SPF) authorization |
+checks based on the command-line arguments or data given in a file or |
+on standard input. For information on SPF see http://www.openspf.org. |
+. |
+.SH OPTIONS |
+Options are divided into two groups: Data options, which must be |
+given, though just enough of them to specify a query; and control |
+options, which are optional and control the local policy, behaviour |
+and output format of spfquery. |
+.PP |
+This programs follows the GNU \fBgetopt_long_only\fR(3) command line |
+syntax: Long options can be given with one or two dashes and can be |
+abbreviated to a prefix long enough to be non-ambiguous. If an option |
+starting with a single dash doesn't match a long option, it is taken |
+as a short option with a following parameter, if applicable. An equals |
+sign between the option name and the parameter is optional for both |
+short and long options. |
+.SS Data options |
+The |
+\fB\-\-file\fR option conflicts with all the other data options. The |
+\fB\-\-helo\fR and \fB\-\-rcpt\-to\fR are optional. |
+.TP |
+\fB\-f\fR, \fB\-\-file\fR \fIfilename\fR |
+Read SPF data from \fIfilename\fR. Specify \(lq-\(rq to read from standard input. |
+.sp |
+The file should consist of one line per query, each query line consisting of the IP address, sender adress, and optional HELO string, separated by spaces. |
+.sp |
+\fBNote\fP |
+Local parts containing spaces are currently not supported. |
+.TP |
+\fB\-i\fP, \fB\-\-ip\fP \fIip-address\fP |
+Specify the IP address of the remote host that is delivering the mail. |
+.TP |
+\fB\-s\fP, \fB\-\-sender\fP [\fIlocal-part\fP\fB@\fP]\fIdomain\fP |
+Specify the email address that was used as the envelope sender. If no |
+username (local part) is given, \(lqpostmaster\(rq will be assumed. |
+.TP |
+\fB\-h\fP, \fB\-\-helo\fP \fIdomain-name\fP |
+Specify that \fIdomain-name\fP was provided in the SMTP HELO (or EHLO) command. |
+.TP |
+\fB\-r\fP, \fB\-\-rcpt-to\fP \fIrcpt-address\fP[,\fIrcpt-address\fP,...] |
+Specify the recipients as comma-separated list. Any secondary mail exchangers of all |
+recipient domains are automatically authorized. |
+. |
+.SS Control options |
+.TP |
+\fB\-d\fP, \fB\-\-debug\fP[\fB=\fP\fIlevel\fP] |
+Turn on debugging output. |
+.TP |
+\fB\-l\fP, \fB\-\-local\fP \fIspf\-terms\fP |
+Test against \fIspf\-terms\fR before the final (implicit or explicit) |
+\(lqall\(rq in an SPF record. This can be used to implement a local policy for whitelisting. |
+.TP |
+\fB\-t, \fB\-\-trusted\fR [\fB1\fR] |
+Check the sender domain with trusted\-forwarder.org. |
+\fBThis is a non\-standard feature.\fR |
+.TP |
+\fB\-t\fP \fB0\fP, \fB\-\-trusted\fR \fB0\fP |
+Do not check the sender domain with trusted\-forwarder.org. This is the default. |
+.TP |
+\fB\-g\fP, \fB\-\-guess\fP \fIspf-mechanisms\fP |
+Test the sender domain against \fIspf\-mechanisms\fP if the domain has no SPF record. |
+.TP |
+\fB\-e\fP, \fB\-\-default\-explanation\fP \fIstring\fP |
+Default explanation string to use if the SPF record does not specify an expla\%nation string itself. |
+.TP |
+\fB\-m\fP, \fB\-\-max\-lookup\fP \fInumber\fP |
+Maximum number of DNS lookups to allow. |
+.TP |
+\fB\-c\fP, \fB\-\-sanitize\fP [\fB0\fP|\fB1\fP] |
+Do [not] sanitize the output by condensing conse\%cutive white\%space |
+into a single space and replacing non-printable characters with |
+question marks. Enabled by default. |
+.TP |
+\fB\-n\fP, \fB\-\-name\fP \fIhostname\fP |
+Use |
+\fIhostname\fP |
+as the name of the local system instead of |
+\(lqspfquery\(rq |
+(the name is used in the output). |
+.TP |
+\fB\-k\fP, \fB\-\-keep\-comments\fP |
+Print comments found when reading from a file. |
+.TP |
+\fB\-a\fP, \fB\-\-override\fP \fI...\fP |
+.TP |
+\fB\-z\fP, \fB\-\-fallback\fP \fI...\fP |
+Provide override and fallback SPF records for certain domains. |
+\fBNot implemented yet.\fP |
+\fBspfquery\fP |
+would act as if the speci\%fied records were present before and after any existing record, respectively, of those domains. |
+.TP |
+\fB\-\-help\fP |
+Show summary of options. |
+.TP |
+\fB\-v\fP, \fB\-\-version\fP |
+Show version of program. |
+.SH DIAGNOSTICS |
+The output ordinarily consists of four lines: |
+.IP 1. 4 |
+the \fIresult code\fP; |
+.IP 2. 4 |
+the \fIexplanation\fP, suitable for use in an SMTP response message, empty |
+except when a rejection (permanent or temporary) makes sense; |
+.IP 3. 4 |
+the header comment on its own; |
+.IP 4. 4 |
+the Received\-SPF header field as defined in RFC 4408 section 7, |
+incorporating the header comment. |
+.PP |
+If errors (including no SPF record found!) occur during processing, |
+one or more error blocks will be prepended. |
+These start with \(lqStartError\(lq and end with \(lqEndError\(lq. |
+.PP |
+The result codes and their corresponding exit codes are as follows: |
+.TP |
+.B 1 \(en neutral |
+The sender domain explicitly makes no assertion about the \fIip-address\fP. |
+This result must be interpreted exactly as if no SPF record at all existed. |
+.TP |
+.B 2 \(en pass |
+The \fIip-address\fP is authorized to send mail for the sender domain. |
+.TP |
+.B 3 \(en fail |
+The \fIip-address\fP is \fBunauthorized\fP to send mail for the sender domain. |
+.TP |
+.B 4 \(en softfail |
+The \fIip-address\fP is not authorized to send mail for the sender domain, but |
+the sender domain cannot or does not wish to make a strong assertion that no such mail can |
+ever come from it. |
+.TP |
+.B 5 \(en none |
+No SPF record was found. |
+.TP |
+.BR "6 \(en error" " (temporary)" |
+A transient error occurred (e.g. failure to reach a DNS server), preventing a |
+result from being reached. |
+.TP |
+.BR "7 \(en unknown" " (permanent error)" |
+One or more SPF records could not be interpreted. |
+.SH EXAMPLES |
+.nf |
+spfquery \-ip=11.22.33.44 \-sender=user@aol.com \-helo=spammer.tld |
+spfquery \-f test_data |
+echo "127.0.0.1 myname@mydomain.com helohost.com" | spfquery \-f \- |
+.fi |
+.SH SEE ALSO |
+\fBspftest\fR(1), \fBspfd\fR(8) |
+.SH AUTHOR |
+\fBspfquery\fP was written by Wayne Schlitt. |
+.PP |
+This manual page was written by Magnus Holmgren for the Debian\*[R] |
+system (but may be used by others). Heavily inspired by the spfquery manpage of |
+libmail\-spf\-query\-perl (\fBspfquery.mail\-spf\-query\-perl\fR(1)) by Julian Mehnle. |
+Also based on the command\-line help of spfquery. |
+.SH COPYRIGHT |
+Copyright \(co 2007 Magnus Holmgren. Permission is granted to copy, |
+distribute and/or modify this document under the terms of the BSD |
+License. |
+.PP |
+On Debian systems, the complete text of the BSD License can be found in /usr/share/common\-licenses/BSD. |
Index: 1.2.5.dfsg-5/debian/copyright |
=================================================================== |
--- 1.2.5.dfsg-5/debian/copyright (nonexistent) |
+++ 1.2.5.dfsg-5/debian/copyright (revision 27) |
@@ -0,0 +1,20 @@ |
+This package was debianized by Eric Dorland <eric@debian.org> on |
+Sun, 04 Jul 2004 19:00:36 -0400 |
+ |
+The current maintainer is Magnus Holmgren <magnus@kibibyte.se>. |
+ |
+It was downloaded from http://www.libspf2.org/ |
+ |
+Upstream Author: Wayne Schlitt <wayne@schlitt.net> |
+ |
+Copyright: |
+ |
+Software copyright © 2004-2005 Wayne Schlitt <wayne@schlitt.net> and |
+Shevek <shevek@anarres.org> |
+ |
+You are free to distribute this software under the terms of the GNU Lesser |
+General Public License version 2.1 or the BSD license, at your choice. |
+ |
+On Debian systems, the complete text of the GNU Lesser General Public |
+License can be found in the file `/usr/share/common-licenses/LGPL-2.1' and |
+the BSD license can be found in the file `/usr/share/common-licenses/BSD'. |
Index: 1.2.5.dfsg-5/debian/README.Debian |
=================================================================== |
--- 1.2.5.dfsg-5/debian/README.Debian (nonexistent) |
+++ 1.2.5.dfsg-5/debian/README.Debian (revision 27) |
@@ -0,0 +1,22 @@ |
+libspf2 for Debian |
+================== |
+ |
+Debian's version of libspf2 does a couple of things slightly |
+differently compared to the upstream version (usually meaning: more |
+RFC-compliantly). You can always see all applied patches by |
+downloading the source package and looking in the debian/patches |
+subdirectory. All patches should also be mentioned in the Debian |
+changelog. Some deserve further comment, though: |
+ |
+* 42_empty_sender.dpatch changes SPF_request_set_env_sender() so that |
+ if called with an empty envelope sender, the envelope sender in the |
+ SPF_request_struct structure will be set to the HELO identity |
+ instead ("postmaster@" + the HELO domain), provided that |
+ SPF_request_set_helo_dom() has been called beforehand. This should |
+ improve behaviour of applications that (incorrectly) call |
+ SPF_request_set_env_sender() with an empty envelope sender address. |
+ However, applications SHOULD NOT RELY ON THIS, but should check if |
+ the envelope sender address is empty, and in that case pass the HELO |
+ identity instead, or use the result of an earlier HELO check. |
+ |
+ -- Magnus Holmgren <magnus@kibibyte.se>, Wed, 22 Aug 2007 17:10:07 +0200 |
Index: 1.2.5.dfsg-5/debian/watch |
=================================================================== |
--- 1.2.5.dfsg-5/debian/watch (nonexistent) |
+++ 1.2.5.dfsg-5/debian/watch (revision 27) |
@@ -0,0 +1,3 @@ |
+version=3 |
+ |
+opts=dversionmangle=s/\.dfsg$// http://www.libspf2.org/download.html spf/libspf2-(.+)\.tar\.gz |
Index: 1.2.5.dfsg-5/debian/libspf2-dev.install |
=================================================================== |
--- 1.2.5.dfsg-5/debian/libspf2-dev.install (nonexistent) |
+++ 1.2.5.dfsg-5/debian/libspf2-dev.install (revision 27) |
@@ -0,0 +1,4 @@ |
+debian/tmp/usr/lib/*.so usr/lib |
+debian/tmp/usr/lib/*.a usr/lib |
+debian/tmp/usr/lib/*.la usr/lib |
+debian/tmp/usr/include/* usr/include |
Index: 1.2.5.dfsg-5/debian/spfquery.prerm |
=================================================================== |
--- 1.2.5.dfsg-5/debian/spfquery.prerm (nonexistent) |
+++ 1.2.5.dfsg-5/debian/spfquery.prerm (revision 27) |
@@ -0,0 +1,14 @@ |
+#!/bin/sh -e |
+ |
+mode=$1 |
+ |
+source_package=libspf2 |
+ |
+case "$mode" in |
+ remove ) |
+ update-alternatives --remove spfquery /usr/bin/spfquery.$source_package |
+ update-alternatives --remove spfd /usr/sbin/spfd.$source_package |
+ ;; |
+esac |
+ |
+#DEBHELPER# |
Index: 1.2.5.dfsg-5/debian/compat |
=================================================================== |
--- 1.2.5.dfsg-5/debian/compat (nonexistent) |
+++ 1.2.5.dfsg-5/debian/compat (revision 27) |
@@ -0,0 +1 @@ |
+5 |
Index: 1.2.5.dfsg-5/debian/spfquery.install |
=================================================================== |
--- 1.2.5.dfsg-5/debian/spfquery.install (nonexistent) |
+++ 1.2.5.dfsg-5/debian/spfquery.install (revision 27) |
@@ -0,0 +1,4 @@ |
+debian/tmp/usr/bin/spfquery usr/bin |
+debian/tmp/usr/bin/spftest usr/bin |
+debian/tmp/usr/bin/spf_example usr/bin |
+debian/tmp/usr/bin/spfd usr/sbin |
Index: 1.2.5.dfsg-5/debian/libspf2-2.install |
=================================================================== |
--- 1.2.5.dfsg-5/debian/libspf2-2.install (nonexistent) |
+++ 1.2.5.dfsg-5/debian/libspf2-2.install (revision 27) |
@@ -0,0 +1 @@ |
+debian/tmp/usr/lib/*.so.* usr/lib |
Index: 1.2.5.dfsg-5/debian/libspf2-dev.README.Debian |
=================================================================== |
--- 1.2.5.dfsg-5/debian/libspf2-dev.README.Debian (nonexistent) |
+++ 1.2.5.dfsg-5/debian/libspf2-dev.README.Debian (revision 27) |
@@ -0,0 +1,8 @@ |
+libspf2 for Debian |
+------------------ |
+ |
+Information and more recent versions of libspf2 are available from |
+ |
+ http://www.libspf2.org/ |
+ |
+ -- Eric Dorland <eric@debian.org>, Sun Jul 4 19:02:07 2004 |
Index: 1.2.5.dfsg-5/debian/rules |
=================================================================== |
--- 1.2.5.dfsg-5/debian/rules (nonexistent) |
+++ 1.2.5.dfsg-5/debian/rules (revision 27) |
@@ -0,0 +1,17 @@ |
+#!/usr/bin/make -f |
+ |
+SOURCE_PACKAGE = libspf2 |
+ |
+include /usr/share/cdbs/1/class/autotools.mk |
+include /usr/share/cdbs/1/rules/debhelper.mk |
+include /usr/share/cdbs/1/rules/dpatch.mk |
+ |
+DEB_DH_MAKESHLIBS_ARGS_libspf2-2 = -V 'libspf2-2 (>= 1.2.5)' |
+ |
+binary-install/spfquery:: |
+# Rename the `spfquery` tool for the alternatives system: |
+ mv debian/spfquery/usr/bin/spfquery debian/spfquery/usr/bin/spfquery.$(SOURCE_PACKAGE) |
+ mv debian/spfquery/usr/sbin/spfd debian/spfquery/usr/sbin/spfd.$(SOURCE_PACKAGE) |
+ |
+get-orig-source: |
+ wget http://www.libspf2.org/spf/libspf2-1.2.5.tar.gz |
/1.2.5.dfsg-5/debian/rules |
---|
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.2.5.dfsg-5/debian/README.Debian-source |
=================================================================== |
--- 1.2.5.dfsg-5/debian/README.Debian-source (nonexistent) |
+++ 1.2.5.dfsg-5/debian/README.Debian-source (revision 27) |
@@ -0,0 +1,16 @@ |
+The upstream tarball has been repackaged because it contained non-free |
+material in the form of an (obsolete) IETF Internet Draft |
+(draft-mengwong-spf-00.txt in the docs subdirectory). As far as I can |
+see It's non-free because it doesn't contain any copyright information |
+at all, thereby defaulting to "all right reserved" in most |
+jurisdictions. |
+ |
+Current SPF specifications can be found at |
+<http://www.openspf.org/Specifications>. |
+ |
+To download the original tarball use `debian/rules get-orig-source' or |
+go to <http://www.libspf2.org/download.html> (beware that running |
+debian/rules outside the package directory can have unwanted side |
+effects due to CDBS). |
+ |
+ -- Magnus Holmgren <magnus@kibibyte.se> Fri, 23 Mar 2007 16:44:20 +0100 |
Index: 1.2.5.dfsg-5/debian |
=================================================================== |
--- 1.2.5.dfsg-5/debian (nonexistent) |
+++ 1.2.5.dfsg-5/debian (revision 27) |
/1.2.5.dfsg-5/debian |
---|
Property changes: |
Added: mergeWithUpstream |
## -0,0 +1 ## |
+1 |
\ No newline at end of property |