summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-04-13 15:28:40 -0400
committerJune McEnroe <june@causal.agency>2020-04-13 15:28:40 -0400
commit3882e8c39fdc88231bceb3ed9a5c44b4a8b70f3a (patch)
treed1c0955ffe66e8175d5faecd8f24149b7e357400
parentRename pathMangle to pathSafe (diff)
downloadbubger-3882e8c39fdc88231bceb3ed9a5c44b4a8b70f3a.tar.gz
bubger-3882e8c39fdc88231bceb3ed9a5c44b4a8b70f3a.zip
Add -u option to set base URL
-rw-r--r--archive.c3
-rw-r--r--archive.h1
-rw-r--r--bubger.112
3 files changed, 11 insertions, 5 deletions
diff --git a/archive.c b/archive.c
index 69d3c77..d505949 100644
--- a/archive.c
+++ b/archive.c
@@ -65,7 +65,7 @@ int main(int argc, char *argv[]) {
 	const char *title = NULL;
 	const char *headPath = NULL;
 
-	for (int opt; 0 < (opt = getopt(argc, argv, "C:a:h:p:s:t:vw:"));) {
+	for (int opt; 0 < (opt = getopt(argc, argv, "C:a:h:p:s:t:u:vw:"));) {
 		switch (opt) {
 			break; case 'C': {
 				int error = chdir(optarg);
@@ -76,6 +76,7 @@ int main(int argc, char *argv[]) {
 			break; case 'p': port = optarg;
 			break; case 's': search = optarg;
 			break; case 't': title = optarg;
+			break; case 'u': atomBaseURL = optarg;
 			break; case 'v': imapVerbose = true;
 			break; case 'w': passPath = optarg;
 		}
diff --git a/archive.h b/archive.h
index 7c6751d..f0572b7 100644
--- a/archive.h
+++ b/archive.h
@@ -180,6 +180,7 @@ int mboxFrom(FILE *file);
 int mboxHeader(FILE *file, const char *header);
 int mboxBody(FILE *file, const char *body);
 
+extern const char *atomBaseURL;
 int atomEntryOpen(FILE *file, const struct Envelope *envelope);
 int atomContentOpen(FILE *file);
 int atomContentClose(FILE *file);
diff --git a/bubger.1 b/bubger.1
index 932e6bc..68e3219 100644
--- a/bubger.1
+++ b/bubger.1
@@ -1,4 +1,4 @@
-.Dd April 10, 2020
+.Dd April 13, 2020
 .Dt BUBGER 1
 .Os
 .
@@ -15,6 +15,7 @@
 .Op Fl p Ar port
 .Op Fl s Ar search
 .Op Fl t Ar title
+.Op Fl u Ar base
 .Op Fl w Ar file
 .Ar host
 .Ar user
@@ -69,6 +70,12 @@ The default search is
 Set the base title for HTML pages.
 The default title is the mailbox name.
 .
+.It Fl u Ar base
+Set the base URL for links in Atom feeds.
+.
+.It Fl v
+Log IMAP protocol to standard error.
+.
 .It Fl w Ar file
 Read the IMAP password from
 .Ar file .
@@ -76,9 +83,6 @@ By default the password is set by the
 .Ev BUBGER_IMAP_PASSWORD
 environment variable.
 .
-.It Fl v
-Log IMAP protocol to standard error.
-.
 .It Ar host
 Connect to IMAP on
 .Ar host .