about summary refs log tree commit diff
path: root/imap.h
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-12-11 00:35:35 -0500
committerJune McEnroe <june@causal.agency>2020-12-11 00:35:35 -0500
commitfd6a4049039fe5191428dc2d37cee3274d65c94c (patch)
tree8b5b11825cd908f6edee773f77b46b3acdedbac4 /imap.h
parentAdd FILES section to README (diff)
downloadbubger-fd6a4049039fe5191428dc2d37cee3274d65c94c.tar.gz
bubger-fd6a4049039fe5191428dc2d37cee3274d65c94c.zip
Add imapIdle
Handles re-IDLE-ing every 29 minutes and returns the first response it
gets.
Diffstat (limited to '')
-rw-r--r--imap.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/imap.h b/imap.h
index 4cd7691..015c8b8 100644
--- a/imap.h
+++ b/imap.h
@@ -162,6 +162,13 @@ struct Resp {
 	const char *text;
 };
 
+static inline struct Resp respOk(struct Resp resp) {
+	if (resp.resp == AtomNo || resp.resp == AtomBad || resp.resp == AtomBye) {
+		errx(EX_CONFIG, "%s: %s", Atoms[resp.tag], resp.text);
+	}
+	return resp;
+}
+
 static inline void respFree(struct Resp resp) {
 	listFree(resp.code);
 	listFree(resp.data);
@@ -180,5 +187,6 @@ struct IMAP {
 
 struct IMAP imapOpen(const char *host, const char *port);
 struct Resp imapResp(struct IMAP *imap);
+struct Resp imapIdle(struct IMAP *imap, enum Atom tag);
 
 #endif /* IMAP_H */
2d0d37e2f3&follow=1'>Add chroot targetJune McEnroe 2020-02-11Exit focus and paste modes on err exitJune McEnroe 2020-02-11Add startup GPLv3 note and URLJune McEnroe 2020-02-11Make sure -D_GNU_SOURCE ends up in CFLAGS on LinuxJune McEnroe 2020-02-11Add note about setting PKG_CONFIG_PATHJune McEnroe 2020-02-11Rename query ID on nick changeJune McEnroe 2020-02-11Call completeClear when closing a windowJune McEnroe 2020-02-11Don't insert color codes for non-mentionsJune McEnroe 2020-02-11Take first two words in colorMentionsJune McEnroe 2020-02-11Use time_t for save signatureJune McEnroe 2020-02-11Set self.nick to * initiallyJune McEnroe 2020-02-11Define ColorCap instead of hardcoding 100June McEnroe 2020-02-11Move hash to top of chat.hJune McEnroe 2020-02-11Move base64 out of chat.hJune McEnroe 2020-02-11Move XDG_SUBDIR out of chat.hJune McEnroe 2020-02-11Fix whois idle unit calculationJune McEnroe 2020-02-11Cast towupper to wchar_tJune McEnroe 2020-02-11Cast set but unused variables to voidJune McEnroe 2020-02-11Declare strlcatJune McEnroe 2020-02-11Check if VDSUSP existsJune McEnroe 2020-02-11Fix completeReplace iterationJune McEnroe 2020-02-11Use pkg(8) to configure on FreeBSDJune McEnroe 2020-02-11Remove legacy codeJune McEnroe 2020-02-11Add INSTALLING section to READMEJune McEnroe