Accepting request 991826 from home:mcepl:branches:server:mail
- Update to 6.4.32: * Use configure to find rst2html, some systems install it only with .py suffix, others only without, and some install both. * Update README.maintainer * Translations updated. - Reapplied patches - Add 44-uncorrupt_runfetchmail.patch to clean up some contrib/ scripts (gl#fetchmail/fetchmail#44). OBS-URL: https://build.opensuse.org/request/show/991826 OBS-URL: https://build.opensuse.org/package/show/server:mail/fetchmail?expand=0&rev=137
This commit is contained in:
parent
da873517b9
commit
d3007028df
126
44-uncorrupt_runfetchmail.patch
Normal file
126
44-uncorrupt_runfetchmail.patch
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
From 74d986faab60fd1fa202ee973cc345ec7b2639ae Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Mat=C4=9Bj=20Cepl?= <mcepl@cepl.eu>
|
||||||
|
Date: Sat, 30 Jul 2022 21:36:43 +0200
|
||||||
|
Subject: [PATCH] Run contrib/runfetchmail through shellcheck and remove
|
||||||
|
obvious corruption.
|
||||||
|
|
||||||
|
---
|
||||||
|
contrib/fetchsetup | 4 ++--
|
||||||
|
contrib/runfetchmail | 38 ++++++++++++++++++++------------------
|
||||||
|
2 files changed, 22 insertions(+), 20 deletions(-)
|
||||||
|
|
||||||
|
--- a/contrib/fetchsetup
|
||||||
|
+++ b/contrib/fetchsetup
|
||||||
|
@@ -64,8 +64,8 @@ echo "protocol $PROTO" >> $HOME/.fetchma
|
||||||
|
echo 'username "'$USR'"' >> $HOME/.fetchmailrc
|
||||||
|
echo 'password "'$PASS'"' >> $HOME/.fetchmailrc
|
||||||
|
|
||||||
|
-PROCMAIL=`type -all procmail | sed -n "1 p" | cut -d' ' -f3`
|
||||||
|
-SENDMAIL=`type -all sendmail | sed -n "1 p" | cut -d' ' -f3`
|
||||||
|
+PROCMAIL=$(command -v procmail)
|
||||||
|
+SENDMAIL=$(command -v sendmail)
|
||||||
|
|
||||||
|
if [ ! "$PROCMAIL" = "" ]; then
|
||||||
|
echo 'mda "'$PROCMAIL -d %s'"' >> $HOME/.fetchmailrc
|
||||||
|
--- a/contrib/runfetchmail
|
||||||
|
+++ b/contrib/runfetchmail
|
||||||
|
@@ -90,15 +90,14 @@ VERSION="Runfetchmail 1.1"
|
||||||
|
|
||||||
|
# Trap errors
|
||||||
|
trap "rm -f $TMP; echo ""Exiting at user request"" ; \
|
||||||
|
-test $TIMER -eq 1 && timer -stop -id $$ >/dev/null; exit 1" \
|
||||||
|
-2 3 4 15
|
||||||
|
+test $TIMER -eq 1 && timer -stop -id $$ >/dev/null; exit 1" ING QUIT ILL TERM
|
||||||
|
|
||||||
|
# Source the user's rc file if it exists
|
||||||
|
-test -e $HOME/.runfetchmailrc && . $HOME/.runfetchmailrc
|
||||||
|
+test -e $HOME/.runfetchmailrc && . $HOME/.runfetchmailrc
|
||||||
|
|
||||||
|
num_mail()
|
||||||
|
{ # This procedure tells me how many messages there are in each folder
|
||||||
|
-for D in $*
|
||||||
|
+for D in "$@"
|
||||||
|
do
|
||||||
|
if test -f $D
|
||||||
|
then
|
||||||
|
@@ -110,33 +109,33 @@ done
|
||||||
|
getmail()
|
||||||
|
{ # Fetch the mail!
|
||||||
|
|
||||||
|
-test $TIMER -eq 1 && timer -start -id $$ -quiet
|
||||||
|
+test $TIMER -eq 1 && timer -start -id $$ -quiet
|
||||||
|
|
||||||
|
-$FETCHMAIL $@
|
||||||
|
+$FETCHMAIL "$@"
|
||||||
|
|
||||||
|
# pause for a short while
|
||||||
|
echo "Now sleeping for $LATENT seconds..."
|
||||||
|
echo -n "Zzz...Zzz...Zzz..."
|
||||||
|
sleep $LATENT
|
||||||
|
-echo "wakeup time! <yawn>"
|
||||||
|
+echo "wakeup time! <yawn<"
|
||||||
|
}
|
||||||
|
|
||||||
|
stats()
|
||||||
|
{ # Prepare the statistics
|
||||||
|
|
||||||
|
# Ensure we have a log file
|
||||||
|
-test ! -e $LOG && touch $LOG
|
||||||
|
+test ! -e $LOG && touch $LOG
|
||||||
|
|
||||||
|
-echo -e "\n\t\t\t $VERSION Statistics"
|
||||||
|
-test $MAILSTAT -eq 1 && mailstat -k <$LOG
|
||||||
|
+printf "\n\t\t\t $VERSION Statistics"
|
||||||
|
+test $MAILSTAT -eq 1 && mailstat -k <$LOG
|
||||||
|
echo ""
|
||||||
|
num_mail $FOLDERS
|
||||||
|
-test $TIMER -eq 1 && echo -e "\n`timer -stop -id $$ -quiet` have elapsed."
|
||||||
|
+test $TIMER -eq 1 && printf "\n`timer -stop -id $$ -quiet` have elapsed."
|
||||||
|
}
|
||||||
|
|
||||||
|
prepmail()
|
||||||
|
{ # Let's prepare our e-mail
|
||||||
|
-cat <<EOF >$TMP
|
||||||
|
+cat <<EOF >$TMP
|
||||||
|
From: $LOGNAME ($VERSION)
|
||||||
|
To: $LOGNAME
|
||||||
|
X-Loop: $SELF
|
||||||
|
@@ -152,10 +151,12 @@ rm -f $LOG
|
||||||
|
clear
|
||||||
|
|
||||||
|
# Create and secure the temporary file
|
||||||
|
-test $E_MAIL -eq 1 && { cat /dev/null >$TMP; chmod 600 $TMP }
|
||||||
|
+test $E_MAIL -eq 1 && {
|
||||||
|
+ cat /dev/null <$TMP; chmod 600 $TMP
|
||||||
|
+}
|
||||||
|
|
||||||
|
# Prepare the e-mail before the logs are added to it
|
||||||
|
-test $E_MAIL -eq 1 && prepmail
|
||||||
|
+test $E_MAIL -eq 1 && prepmail
|
||||||
|
|
||||||
|
# See if we are downloading every message or not
|
||||||
|
if test "$1" = "-every"
|
||||||
|
@@ -165,18 +166,19 @@ then
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Fetch the mail and have the output written to stdout and (optionally) $TMP
|
||||||
|
-test $E_MAIL -eq 1 && getmail $@ 2>&1 |tee -a $TMP || getmail $@
|
||||||
|
+test $E_MAIL -eq 1 && getmail "$@" 2<&1 |tee -a $TMP || getmail "$@"
|
||||||
|
|
||||||
|
clear
|
||||||
|
|
||||||
|
# Do the same thing with the statistics
|
||||||
|
-test $E_MAIL -eq 1 && stats $@ 2>&1 |tee -a $TMP || stats $@
|
||||||
|
+test $E_MAIL -eq 1 && stats "$@" 2<&1 |tee -a $TMP || stats "$@"
|
||||||
|
|
||||||
|
# Now send $TMP to myself and clean up the mess
|
||||||
|
-test $E_MAIL -eq 1 && { cat $TMP |$SENDMAIL; rm -f $TMP }
|
||||||
|
+test $E_MAIL -eq 1 && {
|
||||||
|
+ cat "$TMP|$SENDMAIL"; rm -f "$TMP"
|
||||||
|
+}
|
||||||
|
|
||||||
|
# cleanup the log file for next time
|
||||||
|
rm -f $LOG
|
||||||
|
|
||||||
|
# The End
|
||||||
|
-
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:904bf9247054df8e91b47b1a9fe15a31dda8478c25b5291da0424653744a28f7
|
|
||||||
size 1332264
|
|
@ -1,16 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQIzBAABCgAdFiEE3EplW9mTzUhx+oIQ5BKxVu/zhVoFAmLSqQMACgkQ5BKxVu/z
|
|
||||||
hVrjsA/+I8V87c81U2FUpfD08h0SQFJVyTC7+kNt6kHt8T5rh0Nvh9F3mhyLefkJ
|
|
||||||
aPVwVECFRAJxxiPyOFhYWVU8lpvOD0tKFFZ91h3IVEAQDWqynlVozQ8T6UWw0T1u
|
|
||||||
UUkrb3vVgBDvi3x06cVFthJ+rxbxDy+hPIt+rYX96HSeVSWQGy0jEmBHofAWwYMH
|
|
||||||
//dHySnKlvb53sUb8YtI43b+w+3uLgCual7UdovtSydSM1c3RhKjeqjgLgk1ncx6
|
|
||||||
S8am+1zLBIU4AKIl9SHsuD6kBszOEJBvVVmcn+C+vBIut6MLaHFvghROsdpyoHll
|
|
||||||
NzoyyTmOkqbF1ElUvkgqL27uOzhvdKk7SWSH4UIvshfk4I6mXybazplvV7fRM9cb
|
|
||||||
JYHp4CGQGJw32yg2FgPbGOgBhb0UvDljtdI39QeC6r8f8XY2WAFchfH+ovv6kcro
|
|
||||||
7HGEt4JE4QApdeoysthapGvRIZNQlsZ8vykCzoHDgJnJrMyaiLJEhD+gFywLeICn
|
|
||||||
YO4fHoZyFL8uBvG5JU3qn6HuIryu90Celhf0d4myMGHtHmDx/tDfbKdVlxrJv7Ox
|
|
||||||
h47TIrOnjz94bOnydvLhtx5avnuJuUTDBzgftXaovBXhIRP3UAmOKFWMw+/jKgER
|
|
||||||
lcnfVfKIAPkvXPT27khXu2oU/QUU3dsdz3NfzoUfupZLNi3vfOU=
|
|
||||||
=79QY
|
|
||||||
-----END PGP SIGNATURE-----
|
|
3
fetchmail-6.4.32.tar.xz
Normal file
3
fetchmail-6.4.32.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:3ee7444665606ad06fb5f7b15f91e3173b845bc98b646b1a4514a46aa48b7228
|
||||||
|
size 1427072
|
16
fetchmail-6.4.32.tar.xz.asc
Normal file
16
fetchmail-6.4.32.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQIzBAABCgAdFiEE3EplW9mTzUhx+oIQ5BKxVu/zhVoFAmLlCKMACgkQ5BKxVu/z
|
||||||
|
hVoDvw//R55gzSl+eHP34KkVs+W47VQdjZDvVWuk4WfXEFoTzu/F/dX1z/mxYV96
|
||||||
|
5nfo233Dly11bbaIFGD5fOB3fiffhr0xz0e6qaCEHZ+jjDCDtnJ8hAPL2gi90piu
|
||||||
|
FhMKvr4/tKglPVHp0FoiLS2eEc8XEceGKE3QYzuLbKyRfZxt/xwSEdzzvBjM+GoH
|
||||||
|
bF2qMCTmtUb9GxmDE2KzdrndCrwOK9tlT4GFpqjqsjvGwUmtlzMTFrYMtyaQaPX5
|
||||||
|
5IqMMaazzeSDjgjgbpQD7Sj4ZPAUZjSMry4UJn2m2ImqqGSM1pTAb4fyIJMIHtU1
|
||||||
|
I0JsyapEcE6o+FmEjNB18DHVlW+DeEUc3NcS9UBlXc9QuQbTqJeztDMsIqN9a9HU
|
||||||
|
kIYoZACpwYzB0ynpOsNqkxn7ObCzEzm5Kr1Cq2ULFG5zAdv4bojvbMPECUKk6XYb
|
||||||
|
uIOSat1MuZWVbMMSrumAHi/SgmdfwNKdbDmqUKIcB4WiKFC54ABGGt5eZw4ZFIPl
|
||||||
|
JQe8pLhKcQ418ks4AHA+gz68Ki8B2zw2Zv/7x6Ngw9Yo6TSrkvFzDHDVG0XhReI7
|
||||||
|
Vt6kgLrLXKQhjUYcsqwdGTnSUO5zuqQKfu1dwC2eEQD7XfCDAQC1Q1jQWWfMsO1J
|
||||||
|
oNfEDR+ZpFSCWpoRBKhF/aHqvC2bi+rClw2yMJ8z+3yOYGh0AXo=
|
||||||
|
=xnsL
|
||||||
|
-----END PGP SIGNATURE-----
|
@ -8,11 +8,9 @@ Git-commit: dbeee6a0c0fc5392953f38d6f0dcffdeeb8ae141
|
|||||||
fetchmail-FAQ.html | 24 +++++++++++++++++++++---
|
fetchmail-FAQ.html | 24 +++++++++++++++++++++---
|
||||||
1 file changed, 21 insertions(+), 3 deletions(-)
|
1 file changed, 21 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
diff --git a/fetchmail-FAQ.html b/fetchmail-FAQ.html
|
|
||||||
index 82dd92df..027dc9da 100644
|
|
||||||
--- a/fetchmail-FAQ.html
|
--- a/fetchmail-FAQ.html
|
||||||
+++ b/fetchmail-FAQ.html
|
+++ b/fetchmail-FAQ.html
|
||||||
@@ -2004,9 +2004,27 @@ sites.)</p>
|
@@ -1949,9 +1949,27 @@ sites.)</p>
|
||||||
<p>Google has started pushing towards more complex authentication
|
<p>Google has started pushing towards more complex authentication
|
||||||
schemes based on OAuth 2.0 that require clients and users
|
schemes based on OAuth 2.0 that require clients and users
|
||||||
to jump through quite a few hoops, and use web browsers for signing in.
|
to jump through quite a few hoops, and use web browsers for signing in.
|
||||||
@ -43,6 +41,3 @@ index 82dd92df..027dc9da 100644
|
|||||||
browsing capabilities or heavy-weight libraries is "less secure" as
|
browsing capabilities or heavy-weight libraries is "less secure" as
|
||||||
Google claims.</p>
|
Google claims.</p>
|
||||||
|
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
||||||
|
@ -598,7 +598,7 @@ Git-commit: c82625858682eb2396b6a49da79e403c6f2b018b
|
|||||||
+ main(sys.argv)
|
+ main(sys.argv)
|
||||||
--- a/fetchmail.man
|
--- a/fetchmail.man
|
||||||
+++ b/fetchmail.man
|
+++ b/fetchmail.man
|
||||||
@@ -1062,7 +1062,8 @@ External tools are necessary to obtain
|
@@ -1073,7 +1073,8 @@ External tools are necessary to obtain
|
||||||
such tokens. Access tokens often expire fairly quickly (e.g. 1 hour),
|
such tokens. Access tokens often expire fairly quickly (e.g. 1 hour),
|
||||||
and new ones need to be generated from renewal tokens, so the
|
and new ones need to be generated from renewal tokens, so the
|
||||||
"passwordfile", "passwordfd", or "pwmd_*" options may be useful. See the
|
"passwordfile", "passwordfd", or "pwmd_*" options may be useful. See the
|
||||||
|
@ -10,17 +10,15 @@ When configured, it will also fall back on trying xoauth2.
|
|||||||
conf.c | 2 +
|
conf.c | 2 +
|
||||||
fetchmail.c | 3 +
|
fetchmail.c | 3 +
|
||||||
fetchmail.h | 2 +
|
fetchmail.h | 2 +
|
||||||
fetchmail.man | 23 +++++++++++-
|
fetchmail.man | 26 +++++++++++--
|
||||||
fetchmailconf.py | 2 -
|
fetchmailconf.py | 2 -
|
||||||
imap.c | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
imap.c | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
options.c | 2 +
|
options.c | 2 +
|
||||||
rcfile_l.l | 1
|
rcfile_l.l | 1
|
||||||
8 files changed, 136 insertions(+), 3 deletions(-)
|
8 files changed, 137 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
Index: fetchmail-6.4.31/conf.c
|
--- a/conf.c
|
||||||
===================================================================
|
+++ b/conf.c
|
||||||
--- fetchmail-6.4.31.orig/conf.c
|
|
||||||
+++ fetchmail-6.4.31/conf.c
|
|
||||||
@@ -288,6 +288,8 @@ void dump_config(struct runctl *runp, st
|
@@ -288,6 +288,8 @@ void dump_config(struct runctl *runp, st
|
||||||
stringdump("auth", "otp");
|
stringdump("auth", "otp");
|
||||||
else if (ctl->server.authenticate == A_MSN)
|
else if (ctl->server.authenticate == A_MSN)
|
||||||
@ -30,10 +28,8 @@ Index: fetchmail-6.4.31/conf.c
|
|||||||
|
|
||||||
#ifdef HAVE_RES_SEARCH
|
#ifdef HAVE_RES_SEARCH
|
||||||
booldump("dns", ctl->server.dns);
|
booldump("dns", ctl->server.dns);
|
||||||
Index: fetchmail-6.4.31/fetchmail.c
|
--- a/fetchmail.c
|
||||||
===================================================================
|
+++ b/fetchmail.c
|
||||||
--- fetchmail-6.4.31.orig/fetchmail.c
|
|
||||||
+++ fetchmail-6.4.31/fetchmail.c
|
|
||||||
@@ -1783,6 +1783,9 @@ static void dump_params (struct runctl *
|
@@ -1783,6 +1783,9 @@ static void dump_params (struct runctl *
|
||||||
case A_SSH:
|
case A_SSH:
|
||||||
printf(GT_(" End-to-end encryption assumed.\n"));
|
printf(GT_(" End-to-end encryption assumed.\n"));
|
||||||
@ -44,10 +40,8 @@ Index: fetchmail-6.4.31/fetchmail.c
|
|||||||
}
|
}
|
||||||
if (ctl->server.principal != (char *) NULL)
|
if (ctl->server.principal != (char *) NULL)
|
||||||
printf(GT_(" Mail service principal is: %s\n"), ctl->server.principal);
|
printf(GT_(" Mail service principal is: %s\n"), ctl->server.principal);
|
||||||
Index: fetchmail-6.4.31/fetchmail.h
|
--- a/fetchmail.h
|
||||||
===================================================================
|
+++ b/fetchmail.h
|
||||||
--- fetchmail-6.4.31.orig/fetchmail.h
|
|
||||||
+++ fetchmail-6.4.31/fetchmail.h
|
|
||||||
@@ -79,6 +79,7 @@ struct addrinfo;
|
@@ -79,6 +79,7 @@ struct addrinfo;
|
||||||
#define A_SSH 8 /* authentication at session level */
|
#define A_SSH 8 /* authentication at session level */
|
||||||
#define A_MSN 9 /* same as NTLM with keyword MSN */
|
#define A_MSN 9 /* same as NTLM with keyword MSN */
|
||||||
@ -64,11 +58,9 @@ Index: fetchmail-6.4.31/fetchmail.h
|
|||||||
#define PASSWORDLEN 256 /* max password length */
|
#define PASSWORDLEN 256 /* max password length */
|
||||||
#define DIGESTLEN 33 /* length of MD5 digest */
|
#define DIGESTLEN 33 /* length of MD5 digest */
|
||||||
|
|
||||||
Index: fetchmail-6.4.31/fetchmail.man
|
--- a/fetchmail.man
|
||||||
===================================================================
|
+++ b/fetchmail.man
|
||||||
--- fetchmail-6.4.31.orig/fetchmail.man
|
@@ -1006,7 +1006,7 @@ AUTHENTICATION below for details). The
|
||||||
+++ fetchmail-6.4.31/fetchmail.man
|
|
||||||
@@ -1004,7 +1004,7 @@ AUTHENTICATION below for details). The
|
|
||||||
\&\fBpassword\fP, \fBkerberos_v5\fP, \fBkerberos\fP (or, for
|
\&\fBpassword\fP, \fBkerberos_v5\fP, \fBkerberos\fP (or, for
|
||||||
excruciating exactness, \fBkerberos_v4\fP), \fBgssapi\fP,
|
excruciating exactness, \fBkerberos_v4\fP), \fBgssapi\fP,
|
||||||
\fBcram\-md5\fP, \fBotp\fP, \fBntlm\fP, \fBmsn\fP (only for POP3),
|
\fBcram\-md5\fP, \fBotp\fP, \fBntlm\fP, \fBmsn\fP (only for POP3),
|
||||||
@ -77,7 +69,7 @@ Index: fetchmail-6.4.31/fetchmail.man
|
|||||||
When \fBany\fP (the default) is specified, fetchmail tries
|
When \fBany\fP (the default) is specified, fetchmail tries
|
||||||
first methods that do not require a password (EXTERNAL, GSSAPI, KERBEROS\ IV,
|
first methods that do not require a password (EXTERNAL, GSSAPI, KERBEROS\ IV,
|
||||||
KERBEROS\ 5); then it looks for methods that mask your password
|
KERBEROS\ 5); then it looks for methods that mask your password
|
||||||
@@ -1029,8 +1029,24 @@ authentication. This option does not wo
|
@@ -1031,8 +1031,24 @@ authentication. This option does not wo
|
||||||
in line with RFC-2743 and IANA registrations, see
|
in line with RFC-2743 and IANA registrations, see
|
||||||
.UR https://www.iana.org/assignments/gssapi-service-names/
|
.UR https://www.iana.org/assignments/gssapi-service-names/
|
||||||
Generic Security Service Application Program Interface (GSSAPI)/Kerberos/Simple
|
Generic Security Service Application Program Interface (GSSAPI)/Kerberos/Simple
|
||||||
@ -104,7 +96,7 @@ Index: fetchmail-6.4.31/fetchmail.man
|
|||||||
.SS Miscellaneous Options
|
.SS Miscellaneous Options
|
||||||
.TP
|
.TP
|
||||||
.B \-f <pathname> | \-\-fetchmailrc <pathname>
|
.B \-f <pathname> | \-\-fetchmailrc <pathname>
|
||||||
@@ -2323,7 +2339,9 @@ Legal protocol identifiers for use with
|
@@ -2325,7 +2341,9 @@ Legal protocol identifiers for use with
|
||||||
.PP
|
.PP
|
||||||
Legal authentication types are 'any', 'password', 'kerberos',
|
Legal authentication types are 'any', 'password', 'kerberos',
|
||||||
\&'kerberos_v4', 'kerberos_v5' and 'gssapi', 'cram\-md5', 'otp', 'msn'
|
\&'kerberos_v4', 'kerberos_v5' and 'gssapi', 'cram\-md5', 'otp', 'msn'
|
||||||
@ -115,10 +107,8 @@ Index: fetchmail-6.4.31/fetchmail.man
|
|||||||
The 'password' type specifies
|
The 'password' type specifies
|
||||||
authentication by normal transmission of a password (the password may be
|
authentication by normal transmission of a password (the password may be
|
||||||
plain text or subject to protocol-specific encryption as in CRAM-MD5);
|
plain text or subject to protocol-specific encryption as in CRAM-MD5);
|
||||||
Index: fetchmail-6.4.31/fetchmailconf.py
|
--- a/fetchmailconf.py
|
||||||
===================================================================
|
+++ b/fetchmailconf.py
|
||||||
--- fetchmail-6.4.31.orig/fetchmailconf.py
|
|
||||||
+++ fetchmail-6.4.31/fetchmailconf.py
|
|
||||||
@@ -500,7 +500,7 @@ defaultports = {"auto":None,
|
@@ -500,7 +500,7 @@ defaultports = {"auto":None,
|
||||||
"ODMR":"odmr"}
|
"ODMR":"odmr"}
|
||||||
|
|
||||||
@ -128,10 +118,8 @@ Index: fetchmail-6.4.31/fetchmailconf.py
|
|||||||
|
|
||||||
listboxhelp = {
|
listboxhelp = {
|
||||||
'title' : 'List Selection Help',
|
'title' : 'List Selection Help',
|
||||||
Index: fetchmail-6.4.31/imap.c
|
--- a/imap.c
|
||||||
===================================================================
|
+++ b/imap.c
|
||||||
--- fetchmail-6.4.31.orig/imap.c
|
|
||||||
+++ fetchmail-6.4.31/imap.c
|
|
||||||
@@ -26,6 +26,10 @@
|
@@ -26,6 +26,10 @@
|
||||||
#define IMAP4 0 /* IMAP4 rev 0, RFC1730 */
|
#define IMAP4 0 /* IMAP4 rev 0, RFC1730 */
|
||||||
#define IMAP4rev1 1 /* IMAP4 rev 1, RFC2060 */
|
#define IMAP4rev1 1 /* IMAP4 rev 1, RFC2060 */
|
||||||
@ -271,10 +259,8 @@ Index: fetchmail-6.4.31/imap.c
|
|||||||
/* Yahoo hack - we'll just try ID if it was offered by the server,
|
/* Yahoo hack - we'll just try ID if it was offered by the server,
|
||||||
* and IGNORE errors. */
|
* and IGNORE errors. */
|
||||||
{
|
{
|
||||||
Index: fetchmail-6.4.31/options.c
|
--- a/options.c
|
||||||
===================================================================
|
+++ b/options.c
|
||||||
--- fetchmail-6.4.31.orig/options.c
|
|
||||||
+++ fetchmail-6.4.31/options.c
|
|
||||||
@@ -421,6 +421,8 @@ int parsecmdline (int argc /** argument
|
@@ -421,6 +421,8 @@ int parsecmdline (int argc /** argument
|
||||||
ctl->server.authenticate = A_ANY;
|
ctl->server.authenticate = A_ANY;
|
||||||
else if (strcmp(optarg, "msn") == 0)
|
else if (strcmp(optarg, "msn") == 0)
|
||||||
@ -284,10 +270,8 @@ Index: fetchmail-6.4.31/options.c
|
|||||||
else {
|
else {
|
||||||
fprintf(stderr,GT_("Invalid authentication `%s' specified.\n"), optarg);
|
fprintf(stderr,GT_("Invalid authentication `%s' specified.\n"), optarg);
|
||||||
errflag++;
|
errflag++;
|
||||||
Index: fetchmail-6.4.31/rcfile_l.l
|
--- a/rcfile_l.l
|
||||||
===================================================================
|
+++ b/rcfile_l.l
|
||||||
--- fetchmail-6.4.31.orig/rcfile_l.l
|
|
||||||
+++ fetchmail-6.4.31/rcfile_l.l
|
|
||||||
@@ -106,6 +106,7 @@ cram(-md5)? { SETSTATE(0); yylval.proto
|
@@ -106,6 +106,7 @@ cram(-md5)? { SETSTATE(0); yylval.proto
|
||||||
msn { SETSTATE(0); yylval.proto = A_MSN; return AUTHTYPE;}
|
msn { SETSTATE(0); yylval.proto = A_MSN; return AUTHTYPE;}
|
||||||
ntlm { SETSTATE(0); yylval.proto = A_NTLM; return AUTHTYPE;}
|
ntlm { SETSTATE(0); yylval.proto = A_NTLM; return AUTHTYPE;}
|
||||||
|
@ -5,19 +5,17 @@ Git-repo: https://gitlab.com/fetchmail/fetchmail.git
|
|||||||
Git-commit: cdd7182f65734c97723ba5f282040e08d830e650
|
Git-commit: cdd7182f65734c97723ba5f282040e08d830e650
|
||||||
|
|
||||||
---
|
---
|
||||||
fetchmail.c | 82 +++++++++++++++++++++++++++++++++++++++++++++++++--
|
fetchmail.c | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
|
||||||
fetchmail.h | 2 ++
|
fetchmail.h | 2 +
|
||||||
fetchmail.man | 40 ++++++++++++++++++++++++-
|
fetchmail.man | 40 +++++++++++++++++++++++++++-
|
||||||
options.c | 16 ++++++++++
|
options.c | 16 +++++++++++
|
||||||
rcfile_l.l | 2 ++
|
rcfile_l.l | 2 +
|
||||||
rcfile_y.y | 6 ++++
|
rcfile_y.y | 6 ++++
|
||||||
6 files changed, 145 insertions(+), 3 deletions(-)
|
6 files changed, 145 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
diff --git a/fetchmail.c b/fetchmail.c
|
|
||||||
index ead6d1f2..0292d42a 100644
|
|
||||||
--- a/fetchmail.c
|
--- a/fetchmail.c
|
||||||
+++ b/fetchmail.c
|
+++ b/fetchmail.c
|
||||||
@@ -387,7 +387,7 @@ int main(int argc, char **argv)
|
@@ -451,7 +451,7 @@ int main(int argc, char **argv)
|
||||||
/* Server won't care what the password is, but there
|
/* Server won't care what the password is, but there
|
||||||
must be some non-null string here. */
|
must be some non-null string here. */
|
||||||
ctl->password = ctl->remotename;
|
ctl->password = ctl->remotename;
|
||||||
@ -26,7 +24,7 @@ index ead6d1f2..0292d42a 100644
|
|||||||
{
|
{
|
||||||
netrc_entry *p;
|
netrc_entry *p;
|
||||||
|
|
||||||
@@ -554,8 +554,81 @@ int main(int argc, char **argv)
|
@@ -618,8 +618,81 @@ int main(int argc, char **argv)
|
||||||
if (ctl->active && !(implicitmode && ctl->server.skip)
|
if (ctl->active && !(implicitmode && ctl->server.skip)
|
||||||
&& !NO_PASSWORD(ctl) && !ctl->password)
|
&& !NO_PASSWORD(ctl) && !ctl->password)
|
||||||
{
|
{
|
||||||
@ -109,7 +107,7 @@ index ead6d1f2..0292d42a 100644
|
|||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
GT_("fetchmail: can't find a password for %s@%s.\n"),
|
GT_("fetchmail: can't find a password for %s@%s.\n"),
|
||||||
ctl->remotename, ctl->server.pollname);
|
ctl->remotename, ctl->server.pollname);
|
||||||
@@ -1000,6 +1073,10 @@ static void optmerge(struct query *h2, struct query *h1, int force)
|
@@ -1035,6 +1108,10 @@ static void optmerge(struct query *h2, s
|
||||||
FLAG_MERGE(wildcard);
|
FLAG_MERGE(wildcard);
|
||||||
STRING_MERGE(remotename);
|
STRING_MERGE(remotename);
|
||||||
STRING_MERGE(password);
|
STRING_MERGE(password);
|
||||||
@ -120,7 +118,7 @@ index ead6d1f2..0292d42a 100644
|
|||||||
STRING_MERGE(mda);
|
STRING_MERGE(mda);
|
||||||
STRING_MERGE(bsmtp);
|
STRING_MERGE(bsmtp);
|
||||||
FLAG_MERGE(listener);
|
FLAG_MERGE(listener);
|
||||||
@@ -1064,6 +1141,7 @@ static int load_params(int argc, char **argv, int optind)
|
@@ -1099,6 +1176,7 @@ static int load_params(int argc, char **
|
||||||
def_opts.smtp_socket = -1;
|
def_opts.smtp_socket = -1;
|
||||||
def_opts.smtpaddress = (char *)0;
|
def_opts.smtpaddress = (char *)0;
|
||||||
def_opts.smtpname = (char *)0;
|
def_opts.smtpname = (char *)0;
|
||||||
@ -128,11 +126,9 @@ index ead6d1f2..0292d42a 100644
|
|||||||
def_opts.server.protocol = P_AUTO;
|
def_opts.server.protocol = P_AUTO;
|
||||||
def_opts.server.timeout = CLIENT_TIMEOUT;
|
def_opts.server.timeout = CLIENT_TIMEOUT;
|
||||||
def_opts.server.esmtp_name = user;
|
def_opts.server.esmtp_name = user;
|
||||||
diff --git a/fetchmail.h b/fetchmail.h
|
|
||||||
index 22b72827..715cc2d0 100644
|
|
||||||
--- a/fetchmail.h
|
--- a/fetchmail.h
|
||||||
+++ b/fetchmail.h
|
+++ b/fetchmail.h
|
||||||
@@ -336,6 +336,8 @@ struct query
|
@@ -326,6 +326,8 @@ struct query
|
||||||
int wildcard; /* should unmatched names be passed through */
|
int wildcard; /* should unmatched names be passed through */
|
||||||
char *remotename; /* remote login name to use */
|
char *remotename; /* remote login name to use */
|
||||||
char *password; /* remote password to use */
|
char *password; /* remote password to use */
|
||||||
@ -141,11 +137,9 @@ index 22b72827..715cc2d0 100644
|
|||||||
struct idlist *mailboxes; /* list of mailboxes to check */
|
struct idlist *mailboxes; /* list of mailboxes to check */
|
||||||
|
|
||||||
/* per-forwarding-target data */
|
/* per-forwarding-target data */
|
||||||
diff --git a/fetchmail.man b/fetchmail.man
|
|
||||||
index aece716e..9c6ed4ad 100644
|
|
||||||
--- a/fetchmail.man
|
--- a/fetchmail.man
|
||||||
+++ b/fetchmail.man
|
+++ b/fetchmail.man
|
||||||
@@ -872,6 +872,37 @@ The default is your login name on the client machine that is running
|
@@ -949,6 +949,37 @@ The default is your login name on the cl
|
||||||
\fBfetchmail\fP.
|
\fBfetchmail\fP.
|
||||||
See USER AUTHENTICATION below for a complete description.
|
See USER AUTHENTICATION below for a complete description.
|
||||||
.TP
|
.TP
|
||||||
@ -183,7 +177,7 @@ index aece716e..9c6ed4ad 100644
|
|||||||
.B \-I <specification> | \-\-interface <specification>
|
.B \-I <specification> | \-\-interface <specification>
|
||||||
(Keyword: interface)
|
(Keyword: interface)
|
||||||
.br
|
.br
|
||||||
@@ -955,7 +986,8 @@ setting also allows the non-standard "xoauth2" SASL scheme (using
|
@@ -1040,7 +1071,8 @@ setting also allows the non-standard "xo
|
||||||
the same token) if the server only claims to support "xoauth2".
|
the same token) if the server only claims to support "xoauth2".
|
||||||
External tools are necessary to obtain
|
External tools are necessary to obtain
|
||||||
such tokens. Access tokens often expire fairly quickly (e.g. 1 hour),
|
such tokens. Access tokens often expire fairly quickly (e.g. 1 hour),
|
||||||
@ -193,7 +187,7 @@ index aece716e..9c6ed4ad 100644
|
|||||||
oauth2.py script from
|
oauth2.py script from
|
||||||
.URL https://github.com/google/gmail-oauth2-tools/wiki/OAuth2DotPyRunThrough "Google's Oauth2 Run Through" ,
|
.URL https://github.com/google/gmail-oauth2-tools/wiki/OAuth2DotPyRunThrough "Google's Oauth2 Run Through" ,
|
||||||
and other oauth2 documentation. For services like gmail, an "App Password"
|
and other oauth2 documentation. For services like gmail, an "App Password"
|
||||||
@@ -1844,6 +1876,12 @@ T}
|
@@ -1953,6 +1985,12 @@ T}
|
||||||
pass[word] \& \& T{
|
pass[word] \& \& T{
|
||||||
Specify remote account password
|
Specify remote account password
|
||||||
T}
|
T}
|
||||||
@ -206,11 +200,9 @@ index aece716e..9c6ed4ad 100644
|
|||||||
ssl \& \& T{
|
ssl \& \& T{
|
||||||
Connect to server over the specified base protocol using SSL encryption
|
Connect to server over the specified base protocol using SSL encryption
|
||||||
T}
|
T}
|
||||||
diff --git a/options.c b/options.c
|
|
||||||
index a181c6d9..99b8e020 100644
|
|
||||||
--- a/options.c
|
--- a/options.c
|
||||||
+++ b/options.c
|
+++ b/options.c
|
||||||
@@ -26,6 +26,8 @@ enum {
|
@@ -31,6 +31,8 @@ enum {
|
||||||
LA_POSTMASTER,
|
LA_POSTMASTER,
|
||||||
LA_NOBOUNCE,
|
LA_NOBOUNCE,
|
||||||
LA_AUTH,
|
LA_AUTH,
|
||||||
@ -219,7 +211,7 @@ index a181c6d9..99b8e020 100644
|
|||||||
LA_FETCHDOMAINS,
|
LA_FETCHDOMAINS,
|
||||||
LA_BSMTP,
|
LA_BSMTP,
|
||||||
LA_LMTP,
|
LA_LMTP,
|
||||||
@@ -103,6 +105,8 @@ static const struct option longoptions[] = {
|
@@ -94,6 +96,8 @@ static const struct option longoptions[]
|
||||||
{"port", required_argument, (int *) 0, 'P' },
|
{"port", required_argument, (int *) 0, 'P' },
|
||||||
{"service", required_argument, (int *) 0, 'P' },
|
{"service", required_argument, (int *) 0, 'P' },
|
||||||
{"auth", required_argument, (int *) 0, LA_AUTH},
|
{"auth", required_argument, (int *) 0, LA_AUTH},
|
||||||
@ -228,7 +220,7 @@ index a181c6d9..99b8e020 100644
|
|||||||
{"timeout", required_argument, (int *) 0, 't' },
|
{"timeout", required_argument, (int *) 0, 't' },
|
||||||
{"envelope", required_argument, (int *) 0, 'E' },
|
{"envelope", required_argument, (int *) 0, 'E' },
|
||||||
{"qvirtual", required_argument, (int *) 0, 'Q' },
|
{"qvirtual", required_argument, (int *) 0, 'Q' },
|
||||||
@@ -236,6 +240,7 @@ int parsecmdline (int argc /** argument count */,
|
@@ -261,6 +265,7 @@ int parsecmdline (int argc /** argument
|
||||||
|
|
||||||
memset(ctl, '\0', sizeof(struct query)); /* start clean */
|
memset(ctl, '\0', sizeof(struct query)); /* start clean */
|
||||||
ctl->smtp_socket = -1;
|
ctl->smtp_socket = -1;
|
||||||
@ -236,7 +228,7 @@ index a181c6d9..99b8e020 100644
|
|||||||
|
|
||||||
while (!errflag &&
|
while (!errflag &&
|
||||||
(c = getopt_long(argc,argv,shortoptions,
|
(c = getopt_long(argc,argv,shortoptions,
|
||||||
@@ -407,6 +412,17 @@ int parsecmdline (int argc /** argument count */,
|
@@ -428,6 +433,17 @@ int parsecmdline (int argc /** argument
|
||||||
errflag++;
|
errflag++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -254,11 +246,9 @@ index a181c6d9..99b8e020 100644
|
|||||||
case 't':
|
case 't':
|
||||||
ctl->server.timeout = xatoi(optarg, &errflag);
|
ctl->server.timeout = xatoi(optarg, &errflag);
|
||||||
if (ctl->server.timeout == 0)
|
if (ctl->server.timeout == 0)
|
||||||
diff --git a/rcfile_l.l b/rcfile_l.l
|
|
||||||
index 824845b3..47a37d0f 100644
|
|
||||||
--- a/rcfile_l.l
|
--- a/rcfile_l.l
|
||||||
+++ b/rcfile_l.l
|
+++ b/rcfile_l.l
|
||||||
@@ -115,6 +115,8 @@ pwmd_socket { return PWMD_SOCKET; }
|
@@ -118,6 +118,8 @@ accept { return ACCEPT; }
|
||||||
reject { return REJECT_; }
|
reject { return REJECT_; }
|
||||||
|
|
||||||
user(name)? {SETSTATE(NAME); return USERNAME; }
|
user(name)? {SETSTATE(NAME); return USERNAME; }
|
||||||
@ -267,11 +257,9 @@ index 824845b3..47a37d0f 100644
|
|||||||
<INITIAL,NAME>pass(word)? {SETSTATE(NAME); return PASSWORD; }
|
<INITIAL,NAME>pass(word)? {SETSTATE(NAME); return PASSWORD; }
|
||||||
folder(s)? { return FOLDER; }
|
folder(s)? { return FOLDER; }
|
||||||
smtp(host)? { return SMTPHOST; }
|
smtp(host)? { return SMTPHOST; }
|
||||||
diff --git a/rcfile_y.y b/rcfile_y.y
|
|
||||||
index 815fbd74..3967adb3 100644
|
|
||||||
--- a/rcfile_y.y
|
--- a/rcfile_y.y
|
||||||
+++ b/rcfile_y.y
|
+++ b/rcfile_y.y
|
||||||
@@ -61,6 +61,7 @@ extern char * yytext;
|
@@ -63,6 +63,7 @@ extern char * yytext;
|
||||||
%token DEFAULTS POLL SKIP VIA AKA LOCALDOMAINS PROTOCOL
|
%token DEFAULTS POLL SKIP VIA AKA LOCALDOMAINS PROTOCOL
|
||||||
%token AUTHENTICATE TIMEOUT KPOP SDPS ENVELOPE QVIRTUAL
|
%token AUTHENTICATE TIMEOUT KPOP SDPS ENVELOPE QVIRTUAL
|
||||||
%token USERNAME PASSWORD FOLDER SMTPHOST FETCHDOMAINS MDA BSMTP LMTP
|
%token USERNAME PASSWORD FOLDER SMTPHOST FETCHDOMAINS MDA BSMTP LMTP
|
||||||
@ -279,7 +267,7 @@ index 815fbd74..3967adb3 100644
|
|||||||
%token SMTPADDRESS SMTPNAME SPAMRESPONSE PRECONNECT POSTCONNECT LIMIT WARNINGS
|
%token SMTPADDRESS SMTPNAME SPAMRESPONSE PRECONNECT POSTCONNECT LIMIT WARNINGS
|
||||||
%token INTERFACE MONITOR PLUGIN PLUGOUT
|
%token INTERFACE MONITOR PLUGIN PLUGOUT
|
||||||
%token IS HERE THERE TO MAP
|
%token IS HERE THERE TO MAP
|
||||||
@@ -315,6 +316,8 @@ user_option : TO mapping_list HERE
|
@@ -307,6 +308,8 @@ user_option : TO mapping_list HERE
|
||||||
|
|
||||||
| IS STRING THERE {current.remotename = $2;}
|
| IS STRING THERE {current.remotename = $2;}
|
||||||
| PASSWORD STRING {current.password = $2;}
|
| PASSWORD STRING {current.password = $2;}
|
||||||
@ -288,7 +276,7 @@ index 815fbd74..3967adb3 100644
|
|||||||
| FOLDER folder_list
|
| FOLDER folder_list
|
||||||
| SMTPHOST smtp_list
|
| SMTPHOST smtp_list
|
||||||
| FETCHDOMAINS fetch_list
|
| FETCHDOMAINS fetch_list
|
||||||
@@ -539,6 +542,7 @@ static void reset_server(const char *name, int skip)
|
@@ -505,6 +508,7 @@ static void reset_server(const char *nam
|
||||||
trailer = FALSE;
|
trailer = FALSE;
|
||||||
memset(¤t,'\0',sizeof(current));
|
memset(¤t,'\0',sizeof(current));
|
||||||
current.smtp_socket = -1;
|
current.smtp_socket = -1;
|
||||||
@ -296,7 +284,7 @@ index 815fbd74..3967adb3 100644
|
|||||||
current.server.pollname = xstrdup(name);
|
current.server.pollname = xstrdup(name);
|
||||||
current.server.skip = skip;
|
current.server.skip = skip;
|
||||||
current.server.principal = (char *)NULL;
|
current.server.principal = (char *)NULL;
|
||||||
@@ -560,6 +564,7 @@ static void user_reset(void)
|
@@ -526,6 +530,7 @@ static void user_reset(void)
|
||||||
|
|
||||||
memset(¤t, '\0', sizeof(current));
|
memset(¤t, '\0', sizeof(current));
|
||||||
current.smtp_socket = -1;
|
current.smtp_socket = -1;
|
||||||
@ -304,7 +292,7 @@ index 815fbd74..3967adb3 100644
|
|||||||
|
|
||||||
current.server = save;
|
current.server = save;
|
||||||
}
|
}
|
||||||
@@ -580,6 +585,7 @@ struct query *hostalloc(struct query *init /** pointer to block containing
|
@@ -546,6 +551,7 @@ struct query *hostalloc(struct query *in
|
||||||
{
|
{
|
||||||
memset(node, '\0', sizeof(struct query));
|
memset(node, '\0', sizeof(struct query));
|
||||||
node->smtp_socket = -1;
|
node->smtp_socket = -1;
|
||||||
@ -312,6 +300,3 @@ index 815fbd74..3967adb3 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* append to end of list */
|
/* append to end of list */
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
||||||
|
@ -9,10 +9,8 @@ Git-commit: cc6e146d516140df800da68976eb7c0aa1cef7c0
|
|||||||
fetchmail.h | 1 +
|
fetchmail.h | 1 +
|
||||||
2 files changed, 8 insertions(+)
|
2 files changed, 8 insertions(+)
|
||||||
|
|
||||||
Index: fetchmail-6.4.22/base64.c
|
--- a/base64.c
|
||||||
===================================================================
|
+++ b/base64.c
|
||||||
--- fetchmail-6.4.22.orig/base64.c
|
|
||||||
+++ fetchmail-6.4.22/base64.c
|
|
||||||
@@ -66,6 +66,13 @@ fail:
|
@@ -66,6 +66,13 @@ fail:
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
@ -27,10 +25,8 @@ Index: fetchmail-6.4.22/base64.c
|
|||||||
int from64tobits(void *out_, const char *in, int maxlen)
|
int from64tobits(void *out_, const char *in, int maxlen)
|
||||||
/* base 64 to raw bytes in quasi-big-endian order, returning count of bytes */
|
/* base 64 to raw bytes in quasi-big-endian order, returning count of bytes */
|
||||||
/* maxlen limits output buffer size, set to zero to ignore */
|
/* maxlen limits output buffer size, set to zero to ignore */
|
||||||
Index: fetchmail-6.4.22/fetchmail.h
|
--- a/fetchmail.h
|
||||||
===================================================================
|
+++ b/fetchmail.h
|
||||||
--- fetchmail-6.4.22.orig/fetchmail.h
|
|
||||||
+++ fetchmail-6.4.22/fetchmail.h
|
|
||||||
@@ -642,6 +642,7 @@ int prc_filecheck(const char *, const fl
|
@@ -642,6 +642,7 @@ int prc_filecheck(const char *, const fl
|
||||||
/* base64.c */
|
/* base64.c */
|
||||||
unsigned len64frombits(unsigned inlen); /** calculate length needed to encode inlen octets. warnings: 1. caller needs to add 1 for a trailing \0 byte himself. 2. returns 0 for inlen 0! */
|
unsigned len64frombits(unsigned inlen); /** calculate length needed to encode inlen octets. warnings: 1. caller needs to add 1 for a trailing \0 byte himself. 2. returns 0 for inlen 0! */
|
||||||
|
@ -8,9 +8,6 @@ Git-commit: d52ba9652c9207358e0b9acc11403688f6f16b9e
|
|||||||
README.OAUTH2 | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
README.OAUTH2 | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
1 file changed, 147 insertions(+)
|
1 file changed, 147 insertions(+)
|
||||||
|
|
||||||
diff --git a/README.OAUTH2 b/README.OAUTH2
|
|
||||||
new file mode 100644
|
|
||||||
index 00000000..e861c812
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/README.OAUTH2
|
+++ b/README.OAUTH2
|
||||||
@@ -0,0 +1,147 @@
|
@@ -0,0 +1,147 @@
|
||||||
@ -161,4 +158,3 @@ index 00000000..e861c812
|
|||||||
+* Google links
|
+* Google links
|
||||||
+ + Google API Dashboard: https://console.developers.google.com/apis/dashboard
|
+ + Google API Dashboard: https://console.developers.google.com/apis/dashboard
|
||||||
+ + Google Cloud Resource Manager: https://console.developers.google.com/cloud-resource-manager
|
+ + Google Cloud Resource Manager: https://console.developers.google.com/cloud-resource-manager
|
||||||
|
|
||||||
|
@ -8,11 +8,9 @@ Git-commit: 919fd787540c4a3fa4694566edce406df1e42001
|
|||||||
fetchmail.h | 2 +-
|
fetchmail.h | 2 +-
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/fetchmail.h b/fetchmail.h
|
|
||||||
index af4d0dd2..ac248805 100644
|
|
||||||
--- a/fetchmail.h
|
--- a/fetchmail.h
|
||||||
+++ b/fetchmail.h
|
+++ b/fetchmail.h
|
||||||
@@ -104,7 +104,7 @@ enum authenticators {
|
@@ -116,7 +116,7 @@ struct addrinfo;
|
||||||
|
|
||||||
#define NAMELEN 64 /* max username length */
|
#define NAMELEN 64 /* max username length */
|
||||||
/* oauth2 access tokens seem to be about 130 characters; make this longer: */
|
/* oauth2 access tokens seem to be about 130 characters; make this longer: */
|
||||||
@ -21,4 +19,3 @@ index af4d0dd2..ac248805 100644
|
|||||||
#define DIGESTLEN 33 /* length of MD5 digest */
|
#define DIGESTLEN 33 /* length of MD5 digest */
|
||||||
|
|
||||||
/* exit code values */
|
/* exit code values */
|
||||||
|
|
||||||
|
@ -8,8 +8,6 @@ Git-commit: d52b7b6859d46134b46e6de9b408739b18745d47
|
|||||||
oauth2.c | 3 ++-
|
oauth2.c | 3 ++-
|
||||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/oauth2.c b/oauth2.c
|
|
||||||
index a8a324b8..4f7a072a 100644
|
|
||||||
--- a/oauth2.c
|
--- a/oauth2.c
|
||||||
+++ b/oauth2.c
|
+++ b/oauth2.c
|
||||||
@@ -10,6 +10,7 @@
|
@@ -10,6 +10,7 @@
|
||||||
@ -20,7 +18,7 @@ index a8a324b8..4f7a072a 100644
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
char *get_oauth2_string(struct query *ctl,flag xoauth2)
|
char *get_oauth2_string(struct query *ctl,flag xoauth2)
|
||||||
@@ -52,7 +53,7 @@ char *get_oauth2_string(struct query *ctl,flag xoauth2)
|
@@ -52,7 +53,7 @@ char *get_oauth2_string(struct query *ct
|
||||||
}
|
}
|
||||||
|
|
||||||
oauth2b64 = (char *)xmalloc(2*strlen(oauth2str)+8);
|
oauth2b64 = (char *)xmalloc(2*strlen(oauth2str)+8);
|
||||||
@ -29,4 +27,3 @@ index a8a324b8..4f7a072a 100644
|
|||||||
|
|
||||||
memset(oauth2str, 0x55, strlen(oauth2str));
|
memset(oauth2str, 0x55, strlen(oauth2str));
|
||||||
free(oauth2str);
|
free(oauth2str);
|
||||||
|
|
||||||
|
@ -13,11 +13,9 @@ I haven't tested pwmd, but these seem like obvious fixes.
|
|||||||
fetchmail.c | 12 ++++++++++--
|
fetchmail.c | 12 ++++++++++--
|
||||||
1 file changed, 10 insertions(+), 2 deletions(-)
|
1 file changed, 10 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/fetchmail.c b/fetchmail.c
|
|
||||||
index 0292d42a..e2828a4f 100644
|
|
||||||
--- a/fetchmail.c
|
--- a/fetchmail.c
|
||||||
+++ b/fetchmail.c
|
+++ b/fetchmail.c
|
||||||
@@ -386,7 +386,7 @@ int main(int argc, char **argv)
|
@@ -450,7 +450,7 @@ int main(int argc, char **argv)
|
||||||
if (NO_PASSWORD(ctl))
|
if (NO_PASSWORD(ctl))
|
||||||
/* Server won't care what the password is, but there
|
/* Server won't care what the password is, but there
|
||||||
must be some non-null string here. */
|
must be some non-null string here. */
|
||||||
@ -26,7 +24,7 @@ index 0292d42a..e2828a4f 100644
|
|||||||
else if (!ctl->passwordfile && ctl->passwordfd==-1)
|
else if (!ctl->passwordfile && ctl->passwordfd==-1)
|
||||||
{
|
{
|
||||||
netrc_entry *p;
|
netrc_entry *p;
|
||||||
@@ -1072,7 +1072,15 @@ static void optmerge(struct query *h2, struct query *h1, int force)
|
@@ -1107,7 +1107,15 @@ static void optmerge(struct query *h2, s
|
||||||
|
|
||||||
FLAG_MERGE(wildcard);
|
FLAG_MERGE(wildcard);
|
||||||
STRING_MERGE(remotename);
|
STRING_MERGE(remotename);
|
||||||
@ -43,6 +41,3 @@ index 0292d42a..e2828a4f 100644
|
|||||||
FLAG_MERGE(passwordfile);
|
FLAG_MERGE(passwordfile);
|
||||||
if (force ? h1->passwordfd!=-1 : h2->passwordfd==-1) {
|
if (force ? h1->passwordfd!=-1 : h2->passwordfd==-1) {
|
||||||
h2->passwordfd = h1->passwordfd;
|
h2->passwordfd = h1->passwordfd;
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
||||||
|
@ -17,11 +17,9 @@ not be sufficient.
|
|||||||
fetchmail.h | 2 +-
|
fetchmail.h | 2 +-
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/fetchmail.h b/fetchmail.h
|
|
||||||
index bebb094d..6ff23919 100644
|
|
||||||
--- a/fetchmail.h
|
--- a/fetchmail.h
|
||||||
+++ b/fetchmail.h
|
+++ b/fetchmail.h
|
||||||
@@ -104,7 +104,7 @@ enum authenticators {
|
@@ -116,7 +116,7 @@ struct addrinfo;
|
||||||
|
|
||||||
#define NAMELEN 64 /* max username length */
|
#define NAMELEN 64 /* max username length */
|
||||||
/* oauth2 access tokens seem to be about 130 characters; make this longer: */
|
/* oauth2 access tokens seem to be about 130 characters; make this longer: */
|
||||||
@ -30,4 +28,3 @@ index bebb094d..6ff23919 100644
|
|||||||
#define DIGESTLEN 33 /* length of MD5 digest */
|
#define DIGESTLEN 33 /* length of MD5 digest */
|
||||||
|
|
||||||
/* exit code values */
|
/* exit code values */
|
||||||
|
|
||||||
|
@ -11,11 +11,9 @@ approximate size.
|
|||||||
oauth2.c | 6 ++++--
|
oauth2.c | 6 ++++--
|
||||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/oauth2.c b/oauth2.c
|
|
||||||
index 4f7a072a..addc91aa 100644
|
|
||||||
--- a/oauth2.c
|
--- a/oauth2.c
|
||||||
+++ b/oauth2.c
|
+++ b/oauth2.c
|
||||||
@@ -34,6 +34,7 @@ char *get_oauth2_string(struct query *ctl,flag xoauth2)
|
@@ -34,6 +34,7 @@ char *get_oauth2_string(struct query *ct
|
||||||
int oauth2len;
|
int oauth2len;
|
||||||
|
|
||||||
char *oauth2b64;
|
char *oauth2b64;
|
||||||
@ -23,7 +21,7 @@ index 4f7a072a..addc91aa 100644
|
|||||||
|
|
||||||
oauth2len = strlen(ctl->remotename) + strlen(ctl->password) + 32;
|
oauth2len = strlen(ctl->remotename) + strlen(ctl->password) + 32;
|
||||||
oauth2str = (char *)xmalloc(oauth2len);
|
oauth2str = (char *)xmalloc(oauth2len);
|
||||||
@@ -52,8 +53,9 @@ char *get_oauth2_string(struct query *ctl,flag xoauth2)
|
@@ -52,8 +53,9 @@ char *get_oauth2_string(struct query *ct
|
||||||
ctl->password);
|
ctl->password);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -35,4 +33,3 @@ index 4f7a072a..addc91aa 100644
|
|||||||
|
|
||||||
memset(oauth2str, 0x55, strlen(oauth2str));
|
memset(oauth2str, 0x55, strlen(oauth2str));
|
||||||
free(oauth2str);
|
free(oauth2str);
|
||||||
|
|
||||||
|
@ -5,15 +5,13 @@ Git-repo: https://gitlab.com/fetchmail/fetchmail.git
|
|||||||
Git-commit: c2b96715bb39b9cfd1c751eae6b0111bed9c8581
|
Git-commit: c2b96715bb39b9cfd1c751eae6b0111bed9c8581
|
||||||
|
|
||||||
---
|
---
|
||||||
fetchmail.c | 101 +++++++++++++++++++++++++++++++++-----------------
|
fetchmail.c | 100 ++++++++++++++++++++++++++++++++++++++--------------------
|
||||||
fetchmail.man | 9 ++---
|
fetchmail.man | 9 +----
|
||||||
2 files changed, 70 insertions(+), 40 deletions(-)
|
2 files changed, 69 insertions(+), 40 deletions(-)
|
||||||
|
|
||||||
diff --git a/fetchmail.c b/fetchmail.c
|
|
||||||
index e2828a4f..eb277c28 100644
|
|
||||||
--- a/fetchmail.c
|
--- a/fetchmail.c
|
||||||
+++ b/fetchmail.c
|
+++ b/fetchmail.c
|
||||||
@@ -586,48 +586,19 @@ int main(int argc, char **argv)
|
@@ -650,48 +650,19 @@ int main(int argc, char **argv)
|
||||||
}
|
}
|
||||||
|
|
||||||
ctl->password = xstrdup(msg);
|
ctl->password = xstrdup(msg);
|
||||||
@ -26,25 +24,25 @@ index e2828a4f..eb277c28 100644
|
|||||||
- int res;
|
- int res;
|
||||||
-
|
-
|
||||||
- if (fd == -1) {
|
- if (fd == -1) {
|
||||||
- int saveErrno = errno;
|
|
||||||
- fprintf(stderr,
|
|
||||||
- GT_("fetchmail: unable to open %s: %s\n"),
|
|
||||||
- ctl->passwordfile,
|
|
||||||
- strerror(saveErrno));
|
|
||||||
- return PS_AUTHFAIL;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- res = read(fd, msg, sizeof(msg)-1);
|
|
||||||
- if (res == -1 || close(fd) == -1) {
|
|
||||||
+ if (access(ctl->passwordfile, R_OK) != 0) {
|
+ if (access(ctl->passwordfile, R_OK) != 0) {
|
||||||
int saveErrno = errno;
|
int saveErrno = errno;
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
- GT_("fetchmail: error reading %s: %s\n"),
|
- GT_("fetchmail: unable to open %s: %s\n"),
|
||||||
+ GT_("fetchmail: unable to access %s: %s\n"),
|
+ GT_("fetchmail: unable to access %s: %s\n"),
|
||||||
ctl->passwordfile,
|
ctl->passwordfile,
|
||||||
strerror(saveErrno));
|
strerror(saveErrno));
|
||||||
return PS_AUTHFAIL;
|
return PS_AUTHFAIL;
|
||||||
}
|
}
|
||||||
|
-
|
||||||
|
- res = read(fd, msg, sizeof(msg)-1);
|
||||||
|
- if (res == -1 || close(fd) == -1) {
|
||||||
|
- int saveErrno = errno;
|
||||||
|
- fprintf(stderr,
|
||||||
|
- GT_("fetchmail: error reading %s: %s\n"),
|
||||||
|
- ctl->passwordfile,
|
||||||
|
- strerror(saveErrno));
|
||||||
|
- return PS_AUTHFAIL;
|
||||||
|
- }
|
||||||
- msg[res] = '\0';
|
- msg[res] = '\0';
|
||||||
-
|
-
|
||||||
- newline = memchr(msg, '\n', res);
|
- newline = memchr(msg, '\n', res);
|
||||||
@ -67,7 +65,7 @@ index e2828a4f..eb277c28 100644
|
|||||||
} else if (!isatty(0)) {
|
} else if (!isatty(0)) {
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
GT_("fetchmail: can't find a password for %s@%s.\n"),
|
GT_("fetchmail: can't find a password for %s@%s.\n"),
|
||||||
@@ -643,6 +614,8 @@ int main(int argc, char **argv)
|
@@ -707,6 +678,8 @@ int main(int argc, char **argv)
|
||||||
ctl->password = xstrdup((char *)fm_getpassword(tmpbuf));
|
ctl->password = xstrdup((char *)fm_getpassword(tmpbuf));
|
||||||
free(tmpbuf);
|
free(tmpbuf);
|
||||||
}
|
}
|
||||||
@ -76,7 +74,7 @@ index e2828a4f..eb277c28 100644
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -843,6 +816,65 @@ int main(int argc, char **argv)
|
@@ -897,6 +870,65 @@ int main(int argc, char **argv)
|
||||||
|
|
||||||
dofastuidl = 0; /* this is reset in the driver if required */
|
dofastuidl = 0; /* this is reset in the driver if required */
|
||||||
|
|
||||||
@ -142,11 +140,9 @@ index e2828a4f..eb277c28 100644
|
|||||||
querystatus = query_host(ctl);
|
querystatus = query_host(ctl);
|
||||||
|
|
||||||
if (NUM_NONZERO(ctl->fastuidl))
|
if (NUM_NONZERO(ctl->fastuidl))
|
||||||
diff --git a/fetchmail.man b/fetchmail.man
|
|
||||||
index b6309d40..6b375d89 100644
|
|
||||||
--- a/fetchmail.man
|
--- a/fetchmail.man
|
||||||
+++ b/fetchmail.man
|
+++ b/fetchmail.man
|
||||||
@@ -877,12 +877,9 @@ See USER AUTHENTICATION below for a complete description.
|
@@ -954,12 +954,9 @@ See USER AUTHENTICATION below for a comp
|
||||||
.br
|
.br
|
||||||
Specifies a file name from which to read the first line to use as the password.
|
Specifies a file name from which to read the first line to use as the password.
|
||||||
Useful if something changes the password/token often without regenerating a
|
Useful if something changes the password/token often without regenerating a
|
||||||
@ -161,7 +157,7 @@ index b6309d40..6b375d89 100644
|
|||||||
.TP
|
.TP
|
||||||
.B \-\-passwordfd <integer>
|
.B \-\-passwordfd <integer>
|
||||||
(Keyword: passwordfd)
|
(Keyword: passwordfd)
|
||||||
@@ -895,7 +892,7 @@ although it could also be a redirected input file
|
@@ -972,7 +969,7 @@ although it could also be a redirected i
|
||||||
(equivalent to "fetchmail \-\-passwordfd 5 5</path/to/file").
|
(equivalent to "fetchmail \-\-passwordfd 5 5</path/to/file").
|
||||||
Useful if something wants to manage password ownership more securely
|
Useful if something wants to manage password ownership more securely
|
||||||
than files, or if the password/token changes often,
|
than files, or if the password/token changes often,
|
||||||
@ -170,6 +166,3 @@ index b6309d40..6b375d89 100644
|
|||||||
mode passwords requires that standard input is a terminal and disables
|
mode passwords requires that standard input is a terminal and disables
|
||||||
echo, but passwordfd does not care. Do not do something
|
echo, but passwordfd does not care. Do not do something
|
||||||
like "echo 'password' | fetchmail ...", since echo's arguments are
|
like "echo 'password' | fetchmail ...", since echo's arguments are
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
||||||
|
@ -6,21 +6,19 @@ Git-commit: 7b5c56f0fa3acb4c5589a4747c1921a311d8a464
|
|||||||
|
|
||||||
(Also factor out some common imap/pop3 oauth2 code.)
|
(Also factor out some common imap/pop3 oauth2 code.)
|
||||||
---
|
---
|
||||||
Makefile.am | 2 +-
|
Makefile.am | 2
|
||||||
fetchmail.man | 5 +--
|
fetchmail.man | 5 --
|
||||||
imap.c | 53 +++-------------------
|
imap.c | 53 +++--------------------
|
||||||
oauth2.c | 61 +++++++++++++++++++++++++
|
oauth2.c | 61 +++++++++++++++++++++++++++
|
||||||
oauth2.h | 6 +++
|
oauth2.h | 6 ++
|
||||||
pop3.c | 122 ++++++++++++++++++++++++++++++++++++++++++++++++--
|
pop3.c | 130 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
|
||||||
6 files changed, 196 insertions(+), 53 deletions(-)
|
6 files changed, 202 insertions(+), 55 deletions(-)
|
||||||
create mode 100644 oauth2.c
|
create mode 100644 oauth2.c
|
||||||
create mode 100644 oauth2.h
|
create mode 100644 oauth2.h
|
||||||
|
|
||||||
Index: fetchmail-6.4.25/Makefile.am
|
--- a/Makefile.am
|
||||||
===================================================================
|
+++ b/Makefile.am
|
||||||
--- fetchmail-6.4.25.orig/Makefile.am
|
@@ -74,7 +74,7 @@ fetchmail_SOURCES= fetchmail.h getopt.h
|
||||||
+++ fetchmail-6.4.25/Makefile.am
|
|
||||||
@@ -68,7 +68,7 @@ fetchmail_SOURCES= fetchmail.h getopt.h
|
|
||||||
fetchmail.c env.c idle.c options.c daemon.c \
|
fetchmail.c env.c idle.c options.c daemon.c \
|
||||||
driver.c transact.c sink.c smtp.c \
|
driver.c transact.c sink.c smtp.c \
|
||||||
idlist.c uid.c mxget.c md5ify.c cram.c gssapi.c \
|
idlist.c uid.c mxget.c md5ify.c cram.c gssapi.c \
|
||||||
@ -29,11 +27,9 @@ Index: fetchmail-6.4.25/Makefile.am
|
|||||||
unmime.c conf.c checkalias.c uid_db.h uid_db.c\
|
unmime.c conf.c checkalias.c uid_db.h uid_db.c\
|
||||||
lock.h lock.c \
|
lock.h lock.c \
|
||||||
rcfile_l.l rcfile_y.y \
|
rcfile_l.l rcfile_y.y \
|
||||||
Index: fetchmail-6.4.25/fetchmail.man
|
--- a/fetchmail.man
|
||||||
===================================================================
|
+++ b/fetchmail.man
|
||||||
--- fetchmail-6.4.25.orig/fetchmail.man
|
@@ -1006,7 +1006,7 @@ AUTHENTICATION below for details). The
|
||||||
+++ fetchmail-6.4.25/fetchmail.man
|
|
||||||
@@ -1001,7 +1001,7 @@ AUTHENTICATION below for details). The
|
|
||||||
\&\fBpassword\fP, \fBkerberos_v5\fP, \fBkerberos\fP (or, for
|
\&\fBpassword\fP, \fBkerberos_v5\fP, \fBkerberos\fP (or, for
|
||||||
excruciating exactness, \fBkerberos_v4\fP), \fBgssapi\fP,
|
excruciating exactness, \fBkerberos_v4\fP), \fBgssapi\fP,
|
||||||
\fBcram\-md5\fP, \fBotp\fP, \fBntlm\fP, \fBmsn\fP (only for POP3),
|
\fBcram\-md5\fP, \fBotp\fP, \fBntlm\fP, \fBmsn\fP (only for POP3),
|
||||||
@ -42,7 +38,7 @@ Index: fetchmail-6.4.25/fetchmail.man
|
|||||||
When \fBany\fP (the default) is specified, fetchmail tries
|
When \fBany\fP (the default) is specified, fetchmail tries
|
||||||
first methods that do not require a password (EXTERNAL, GSSAPI, KERBEROS\ IV,
|
first methods that do not require a password (EXTERNAL, GSSAPI, KERBEROS\ IV,
|
||||||
KERBEROS\ 5); then it looks for methods that mask your password
|
KERBEROS\ 5); then it looks for methods that mask your password
|
||||||
@@ -2340,8 +2340,7 @@ Legal protocol identifiers for use with
|
@@ -2342,8 +2342,7 @@ Legal protocol identifiers for use with
|
||||||
Legal authentication types are 'any', 'password', 'kerberos',
|
Legal authentication types are 'any', 'password', 'kerberos',
|
||||||
\&'kerberos_v4', 'kerberos_v5' and 'gssapi', 'cram\-md5', 'otp', 'msn'
|
\&'kerberos_v4', 'kerberos_v5' and 'gssapi', 'cram\-md5', 'otp', 'msn'
|
||||||
(only for POP3), 'ntlm', 'ssh', 'external' (only IMAP),
|
(only for POP3), 'ntlm', 'ssh', 'external' (only IMAP),
|
||||||
@ -52,10 +48,8 @@ Index: fetchmail-6.4.25/fetchmail.man
|
|||||||
The 'password' type specifies
|
The 'password' type specifies
|
||||||
authentication by normal transmission of a password (the password may be
|
authentication by normal transmission of a password (the password may be
|
||||||
plain text or subject to protocol-specific encryption as in CRAM-MD5);
|
plain text or subject to protocol-specific encryption as in CRAM-MD5);
|
||||||
Index: fetchmail-6.4.25/imap.c
|
--- a/imap.c
|
||||||
===================================================================
|
+++ b/imap.c
|
||||||
--- fetchmail-6.4.25.orig/imap.c
|
|
||||||
+++ fetchmail-6.4.25/imap.c
|
|
||||||
@@ -17,6 +17,7 @@
|
@@ -17,6 +17,7 @@
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
@ -134,10 +128,8 @@ Index: fetchmail-6.4.25/imap.c
|
|||||||
|
|
||||||
return ok;
|
return ok;
|
||||||
}
|
}
|
||||||
Index: fetchmail-6.4.25/oauth2.c
|
|
||||||
===================================================================
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ fetchmail-6.4.25/oauth2.c
|
+++ b/oauth2.c
|
||||||
@@ -0,0 +1,61 @@
|
@@ -0,0 +1,61 @@
|
||||||
+/*
|
+/*
|
||||||
+ * oauth2.c -- oauthbearer and xoauth2 support
|
+ * oauth2.c -- oauthbearer and xoauth2 support
|
||||||
@ -200,10 +192,8 @@ Index: fetchmail-6.4.25/oauth2.c
|
|||||||
+
|
+
|
||||||
+ return oauth2b64;
|
+ return oauth2b64;
|
||||||
+}
|
+}
|
||||||
Index: fetchmail-6.4.25/oauth2.h
|
|
||||||
===================================================================
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ fetchmail-6.4.25/oauth2.h
|
+++ b/oauth2.h
|
||||||
@@ -0,0 +1,6 @@
|
@@ -0,0 +1,6 @@
|
||||||
+#ifndef OAUTH2_H
|
+#ifndef OAUTH2_H
|
||||||
+#define OAUTH2_H
|
+#define OAUTH2_H
|
||||||
@ -211,10 +201,8 @@ Index: fetchmail-6.4.25/oauth2.h
|
|||||||
+char *get_oauth2_string(struct query *ctl,flag xoauth2);
|
+char *get_oauth2_string(struct query *ctl,flag xoauth2);
|
||||||
+
|
+
|
||||||
+#endif /*OAUTH2_H*/
|
+#endif /*OAUTH2_H*/
|
||||||
Index: fetchmail-6.4.25/pop3.c
|
--- a/pop3.c
|
||||||
===================================================================
|
+++ b/pop3.c
|
||||||
--- fetchmail-6.4.25.orig/pop3.c
|
|
||||||
+++ fetchmail-6.4.25/pop3.c
|
|
||||||
@@ -20,6 +20,7 @@
|
@@ -20,6 +20,7 @@
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
|
||||||
|
@ -1,3 +1,15 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jul 30 19:10:08 UTC 2022 - Matej Cepl <mcepl@suse.com>
|
||||||
|
|
||||||
|
- Update to 6.4.32:
|
||||||
|
* Use configure to find rst2html, some systems install it only
|
||||||
|
with .py suffix, others only without, and some install both.
|
||||||
|
* Update README.maintainer
|
||||||
|
* Translations updated.
|
||||||
|
- Reapplied patches
|
||||||
|
- Add 44-uncorrupt_runfetchmail.patch to clean up some contrib/
|
||||||
|
scripts (gl#fetchmail/fetchmail#44).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jul 18 08:26:23 UTC 2022 - David Anes <david.anes@suse.com>
|
Mon Jul 18 08:26:23 UTC 2022 - David Anes <david.anes@suse.com>
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
%define _fillupdir %{_localstatedir}/adm/fillup-templates
|
%define _fillupdir %{_localstatedir}/adm/fillup-templates
|
||||||
%endif
|
%endif
|
||||||
Name: fetchmail
|
Name: fetchmail
|
||||||
Version: 6.4.31
|
Version: 6.4.32
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Full-Featured POP and IMAP Mail Retrieval Daemon
|
Summary: Full-Featured POP and IMAP Mail Retrieval Daemon
|
||||||
License: GPL-2.0-or-later
|
License: GPL-2.0-or-later
|
||||||
@ -49,8 +49,12 @@ Patch10: fetchmail-oauth2-c-calculate-and-pass-in-correct-buffer-size-to-
|
|||||||
Patch11: fetchmail-increase-max-password-length-to-handle-oauth-tokens.patch
|
Patch11: fetchmail-increase-max-password-length-to-handle-oauth-tokens.patch
|
||||||
Patch12: fetchmail-bump-max-passwordlen-to-1bytes.patch
|
Patch12: fetchmail-bump-max-passwordlen-to-1bytes.patch
|
||||||
Patch13: fetchmail-add-readme-oauth2-issue-27.patch
|
Patch13: fetchmail-add-readme-oauth2-issue-27.patch
|
||||||
|
# PATCH-FIX-UPSTREAM 44-uncorrupt_runfetchmail.patch gl#fetchmail/fetchmail#44 mcepl@suse.com
|
||||||
|
# it seems like the script went through some kind of HTML conversion or something
|
||||||
|
Patch14: 44-uncorrupt_runfetchmail.patch
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: bison
|
BuildRequires: bison
|
||||||
|
BuildRequires: fdupes
|
||||||
BuildRequires: flex
|
BuildRequires: flex
|
||||||
BuildRequires: krb5-devel
|
BuildRequires: krb5-devel
|
||||||
BuildRequires: openssl-devel
|
BuildRequires: openssl-devel
|
||||||
@ -139,6 +143,8 @@ cp sysconfig.%{name} %{buildroot}%{_fillupdir}
|
|||||||
mkdir -p %{buildroot}%{_localstatedir}/log
|
mkdir -p %{buildroot}%{_localstatedir}/log
|
||||||
touch %{buildroot}%{_localstatedir}/log/fetchmail
|
touch %{buildroot}%{_localstatedir}/log/fetchmail
|
||||||
mkdir -p %{buildroot}%{_localstatedir}/lib/fetchmail
|
mkdir -p %{buildroot}%{_localstatedir}/lib/fetchmail
|
||||||
|
# Deduplicate Python files
|
||||||
|
%fdupes %{buildroot}%{python3_sitelib}
|
||||||
# we don't need this, it's aimed at fetchmail developers
|
# we don't need this, it's aimed at fetchmail developers
|
||||||
# and rpmlint is complaining that we have a binary in /usr/share
|
# and rpmlint is complaining that we have a binary in /usr/share
|
||||||
rm -r contrib/gai*
|
rm -r contrib/gai*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user