sfeed

Simple RSS and Atom feed parser
git clone https://git.sinitax.com/codemadness/sfeed
Log | Files | Refs | README | LICENSE | Upstream | sfeed.txt

commit bf378f4350b0e92efcefd9c0c34f7b5c57c098f4
parent 14cce37fa54608362dc2d19ff66d10b64e5777b1
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date:   Mon, 10 Apr 2023 16:44:13 +0200

remove sfeed "branding" in outputs

Technically for sfeed_atom this violates the RFC standard. There must be an
author in the feed or for an item. However sfeed is not the author, it is a
generator.  All readers will read these feeds anyway.

https://www.rfc-editor.org/rfc/rfc4287#section-4.1.1
"atom:feed elements MUST contain one or more atom:author elements, unless all of
the atom:feed element's child atom:entry elements contain at least one
atom:author element." *shrug*

Diffstat:
Msfeed_atom.c | 3+--
Msfeed_mbox.c | 2+-
Msfeed_opml_export | 2+-
3 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/sfeed_atom.c b/sfeed_atom.c @@ -132,8 +132,7 @@ main(int argc, char *argv[]) fputs("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" "<feed xmlns=\"http://www.w3.org/2005/Atom\">\n" - "\t<title>Newsfeed</title>\n" - "\t<author><name>sfeed</name></author>\n", stdout); + "\t<title>Newsfeed</title>\n", stdout); printf("\t<id>urn:newsfeed:%lld</id>\n" "\t<updated>%04d-%02d-%02dT%02d:%02d:%02dZ</updated>\n", (long long)now, diff --git a/sfeed_mbox.c b/sfeed_mbox.c @@ -82,7 +82,7 @@ printfeed(FILE *fp, const char *feedname) printf("Date: %s\n", dtimebuf); /* invalid/missing: use current time */ } - printf("From: %s <sfeed@>\n", fields[FieldAuthor][0] ? fields[FieldAuthor] : feedname); + printf("From: %s <anonymous@>\n", fields[FieldAuthor][0] ? fields[FieldAuthor] : feedname); printf("To: %s <%s@%s>\n", user, user, host); printf("Subject: %s\n", fields[FieldTitle]); printf("Message-ID: <%s%s%llu@%s>\n", diff --git a/sfeed_opml_export b/sfeed_opml_export @@ -38,7 +38,7 @@ cat <<! <?xml version="1.0" encoding="UTF-8"?> <opml version="1.0"> <head> - <title>OPML export from sfeed</title> + <title>OPML export</title> </head> <body> !