Samuel GROOT <[email protected]> writes:
> Check if the given utf-8 email address is in the Cc: field.
>
> Signed-off-by: Tom RUSSELLO <[email protected]>
> Signed-off-by: Samuel GROOT <[email protected]>
> Signed-off-by: Matthieu MOY <[email protected]>
> ---
> t/t9001-send-email.sh | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh
> index 56ad8ce..943e6b7 100755
> --- a/t/t9001-send-email.sh
> +++ b/t/t9001-send-email.sh
> @@ -888,8 +888,8 @@ test_expect_success $PREREQ 'utf8 Cc is rfc2047 encoded' '
> [email protected] \
> --smtp-server="$(pwd)/fake.sendmail" \
> outdir/*.patch &&
> - grep "^ " msgtxt1 |
> - grep "=?UTF-8?q?=C3=A0=C3=A9=C3=AC=C3=B6=C3=BA?= <[email protected]>"
> + cc_adr=$(awk "/^Cc: /{flag=1}/^Subject: /{flag=0} flag {print}"
> msgtxt1) &&
> + echo "$cc_adr" | fgrep "=?UTF-8?q?=C3=A0=C3=A9=C3=AC=C3=B6=C3=BA?=
> <[email protected]>"
> '
This still depends on that the output has Cc: before Subject: and
there is no other header that can have an address on it. E.g.
To: [email protected]
Cc: [email protected]
X-foo: <<whatever address you are looking for>>
Subject: [PATCH] A sample patch
would still say that the address is _on_ the CC: list.
I do not usually do awk, but I think you should be able to avoid
capturing output from it, echoing and then grepping, which is way
too ugly. Perhaps you can start from something like below?
#!/bin/sh
awk '
BEGIN { in_cc = 0 }
/^[Cc][Cc]: / {
sub("^[Cc][Cc]: *", "")
in_cc = 1
}
/^[^ ]*:/ {
in_cc = 0
}
/^$/ { exit }
in_cc {
sub("^ *", "")
sub(", *$", "")
print
}
' <<\EOF
To: [email protected]
Cc: [email protected],
[email protected],
[email protected]
X-foo: [email protected]
Subject: [PATCH] A sample patch
Cc: [email protected]
EOF
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html