Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
tree: 0e0020d1c5
Fetching contributors…

Cannot retrieve contributors at this time

executable file 197 lines (178 sloc) 4.984 kb
#!/bin/bash
#. patchfns 2>/dev/null ||
#. /usr/lib/patch-scripts/patchfns 2>/dev/null ||
#. $PATCHSCRIPTS_LIBDIR/patchfns 2>/dev/null ||
#{
# echo "Impossible to find my library 'patchfns'."
# echo "Check your install, or go to the right directory"
# exit 1
#}
EMAIL_ADDRESS='<gregkh@linuxfoundation.org>'
extract_addr()
{
read l
read l
read l
read l
a=$(echo "$l" | sed -n -e 's/.*<\(.*@[^>]*\).*/\1/p')
echo $a
}
if [ x"$SMTP_SERVER" = x ]
then
SMTP_SERVER=localhost:25
fi
if [ x"$EMAIL_ADDRESS" = x ]
then
echo "You must set the EMAIL_ADDRESS environment variable to your email address"
exit 1
fi
FROM=$EMAIL_ADDRESS
TO=""
CC=""
author()
{
first_author=""
TXT=$2
if [ ! -f $TXT ]
then
echo "$TXT is missing"
exit 1
fi
author=""
while read l
do
# skip the Message-ID: line so we don't send email to the wrong place
echo "$l"
reply=$(echo "$l" | grep -i Message-ID:)
if [ x"$reply" != x ]
then
continue
fi
# if this is the start of the diff, then it's time to stop looking
diff=$(echo "$l" | grep "^---")
if [ x"$diff" != x ]
then
echo "diffstart!!!!!"
break
fi
for x in $l
do
a=$(echo "$x" | sed -n -e 's/.*<\(.*@[^>]*\).*/\1/p')
if [ x"$a" != x ]
then
if [ x"$author" == x ]
then
author=$a
first_author=$a
else
author="$author $a"
fi
fi
done
done < $TXT
author=$(echo "$author" | tr ' ' '\n' | grep -v "$first_author" |
sort | uniq)
author="$first_author $author"
eval $1=$(echo $author | sed -e 's/ /,/g')
if [ x"$3" != x ]
then
eval $3=$first_author
fi
}
reply()
{
PATCH=$1
# patch_name=$(stripit $1)
# PATCH=$P/patches/$patch_name.patch
# TXT=$P/txt/$patch_name.txt
# if [ ! -f $TXT ]
# then
# echo $TXT is missing
# exit 1
# fi
echo "PATCH=$PATCH"
# SUBJECT=`grep "Subject:" $PATCH`
SUBJECT=`grep "Subject:" $PATCH | sed s/Subject\:\ //`
# SUBJECT=$(head -n 2 $PATCH | tail -n 1)
MESSAGE_ID=`grep -i "^Message-ID:" $PATCH | cut -f 2 -d ' ' | cut -f 2 -d '<' | cut -f 1 -d '>'`
author AUTHOR $1 FIRST_AUTHOR
echo "author said $AUTHOR"
echo "first_author said $FIRST_AUTHOR"
if [ x"$AUTHOR" == "x" ]
then
echo "nobody to notify"
exit 0
fi
to=""
for i in $(echo "$AUTHOR" | sed -e 's/,/ /g')
do
if ! echo "$TO" | grep "$i"
then
to=$to" -to $i"
fi
done
if [ x"$cc" != x ]
then
cc="-cc $cc"
fi
CHARSET=$(guess-charset "$PATCH")
if test "x$CHARSET" = "ANSI_X3.4-1968"; then
CHARSET=
else
CHARCMD="-charset=$CHARSET"
fi
ID=`make_message_id`
echo "makemail -to $AUTHOR -from=$FROM -subject=\"patch $PATCH added to gregkh tree\" -date=\"$(date -R)\" -reply_to=$MESSAGE_ID -message=$ID $CHARCMD"
# echo "smtpsend -server=$SMTP_SERVER $to -from=$FROM"
(
echo
echo "This is a note to let you know that I've just added the patch titled"
echo
echo " $SUBJECT"
echo
echo "to my gregkh-2.6 tree which can be found in directory form at:"
echo " http://www.kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/patches/"
echo " and in git form at:"
echo " git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/patches.git"
echo
echo "The filename of this patch is:"
echo " $PATCH"
echo
echo "The patch will show up in the next release of the linux-next tree"
echo "(usually sometime within the next 24 hours during the week.)"
echo
echo "If this patch meets the merge guidelines for a bugfix, it should be"
echo "merged into Linus's tree before the next major kernel release."
echo "If not, it will be merged into Linus's tree during the next merge window."
echo
echo "Either way, you will probably be copied on the patch when it gets sent"
echo "to Linus for merging so that others can see what is happening in kernel"
echo "development."
echo
echo "If you have any questions about this process, please let me know."
echo
echo
cat $PATCH
echo
# echo
# echo -n "Patches currently in gregkh-2.6 which might be from "
# echo "$FIRST_AUTHOR are"
# echo
# grep -lR $FIRST_AUTHOR /home/gregkh/linux/patches/ 2> /dev/null |
# sed -e 's/\/home\/gregkh\/linux\/patches\///'
) |
makemail -to "$AUTHOR" -from="$FROM" \
-subject="patch \"$SUBJECT\" added to gregkh-2.6 tree" \
-date="$(date -R)" \
-reply_to="$MESSAGE_ID" \
-message_id="$ID" \
"$CHARCMD" | \
~/bin/msmtp-enqueue.sh -a coco $to
}
for patch_file in $*
do
reply $patch_file
echo "acknowledged $patch_file"
echo "-----------------------------------------------"
echo
done
Jump to Line
Something went wrong with that request. Please try again.