From: Aditya Garg <gargaditya08@live.com>
To: Junio C Hamano <gitster@pobox.com>, git@vger.kernel.org
Cc: Eric Sunshine <sunshine@sunshineco.com>,
Zi Yao <ziyao@disroot.org>,
"brian m . carlson" <sandals@crustytoothpaste.net>,
Jeff King <peff@peff.net>, Ben Knoble <ben.knoble@gmail.com>,
Phillip Wood <phillip.wood123@gmail.com>
Subject: [PATCH v16 07/10] imap-send: add ability to list the available folders
Date: Mon, 9 Jun 2025 07:20:38 +0000 [thread overview]
Message-ID: <PN3PR01MB9597440624DB4F9871F069FAB86BA@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <PN3PR01MB95976572C3B14C983802ECC1B86BA@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM>
Various IMAP servers have different ways to name common folders.
For example, the folder where all deleted messages are stored is often
named "[Gmail]/Trash" on Gmail servers, and "Deleted" on Outlook.
Similarly, the Drafts folder is simply named "Drafts" on Outlook, but
on Gmail it is named "[Gmail]/Drafts".
This commit adds a `--list` command to the `imap-send` tool that lists
the available folders on the IMAP server, allowing users to see
which folders are available and how they are named. A sample output
looks like this when run against a Gmail server:
Fetching the list of available folders...
* LIST (\HasNoChildren) "/" "INBOX"
* LIST (\HasChildren \Noselect) "/" "[Gmail]"
* LIST (\All \HasNoChildren) "/" "[Gmail]/All Mail"
* LIST (\Drafts \HasNoChildren) "/" "[Gmail]/Drafts"
* LIST (\HasNoChildren \Important) "/" "[Gmail]/Important"
* LIST (\HasNoChildren \Sent) "/" "[Gmail]/Sent Mail"
* LIST (\HasNoChildren \Junk) "/" "[Gmail]/Spam"
* LIST (\Flagged \HasNoChildren) "/" "[Gmail]/Starred"
* LIST (\HasNoChildren \Trash) "/" "[Gmail]/Trash"
For OpenSSL, this is achived by running the 'IMAP LIST' command and
parsing the response. This command is specified in RFC6154:
https://datatracker.ietf.org/doc/html/rfc6154#section-5.1
For libcurl, the example code published in the libcurl documentation
is used to implement this functionality:
https://curl.se/libcurl/c/imap-list.html
Signed-off-by: Aditya Garg <gargaditya08@live.com>
---
Documentation/git-imap-send.adoc | 6 +-
imap-send.c | 98 ++++++++++++++++++++++++++------
2 files changed, 87 insertions(+), 17 deletions(-)
diff --git a/Documentation/git-imap-send.adoc b/Documentation/git-imap-send.adoc
index 4a0487b66e..17147f93c3 100644
--- a/Documentation/git-imap-send.adoc
+++ b/Documentation/git-imap-send.adoc
@@ -10,6 +10,7 @@ SYNOPSIS
--------
[verse]
'git imap-send' [-v] [-q] [--[no-]curl] [(--folder|-f) <folder>]
+'git imap-send' --list
DESCRIPTION
@@ -54,6 +55,8 @@ OPTIONS
using libcurl. Ignored if Git was built with the NO_OPENSSL option
set.
+--list::
+ Run the IMAP LIST command to output a list of all the folders present.
CONFIGURATION
-------------
@@ -123,7 +126,8 @@ it. Alternatively, use OAuth2.0 authentication as described below.
[NOTE]
You might need to instead use: `folder = "[Google Mail]/Drafts"` if you get an error
-that the "Folder doesn't exist".
+that the "Folder doesn't exist". You can also run `git imap-send --list` to get a
+list of available folders.
[NOTE]
If your Gmail account is set to another language than English, the name of the "Drafts"
diff --git a/imap-send.c b/imap-send.c
index a4cccb9110..f03a92a2fb 100644
--- a/imap-send.c
+++ b/imap-send.c
@@ -45,15 +45,21 @@
#endif
static int verbosity;
+static int list_folders = 0;
static int use_curl = USE_CURL_DEFAULT;
static char *opt_folder = NULL;
-static const char * const imap_send_usage[] = { "git imap-send [-v] [-q] [--[no-]curl] [(--folder|-f) <folder>] < <mbox>", NULL };
+static char const * const imap_send_usage[] = {
+ N_("git imap-send [-v] [-q] [--[no-]curl] [(--folder|-f) <folder>] < <mbox>"),
+ "git imap-send --list",
+ NULL
+};
static struct option imap_send_options[] = {
OPT__VERBOSITY(&verbosity),
OPT_BOOL(0, "curl", &use_curl, "use libcurl to communicate with the IMAP server"),
OPT_STRING('f', "folder", &opt_folder, "folder", "specify the IMAP folder"),
+ OPT_BOOL(0, "list", &list_folders, "list all folders on the IMAP server"),
OPT_END()
};
@@ -429,7 +435,7 @@ static int buffer_gets(struct imap_buffer *b, char **s)
if (b->buf[b->offset + 1] == '\n') {
b->buf[b->offset] = 0; /* terminate the string */
b->offset += 2; /* next line */
- if (0 < verbosity)
+ if ((0 < verbosity) || (list_folders && strstr(*s, "* LIST")))
puts(*s);
return 0;
}
@@ -1579,6 +1585,26 @@ static int append_msgs_to_imap(struct imap_server_conf *server,
return 0;
}
+static int list_imap_folders(struct imap_server_conf *server)
+{
+ struct imap_store *ctx = imap_open_store(server, "INBOX");
+ if (!ctx) {
+ fprintf(stderr, "failed to connect to IMAP server\n");
+ return 1;
+ }
+
+ fprintf(stderr, "Fetching the list of available folders...\n");
+ /* Issue the LIST command and print the results */
+ if (imap_exec(ctx, NULL, "LIST \"\" \"*\"") != RESP_OK) {
+ fprintf(stderr, "failed to list folders\n");
+ imap_close_store(ctx);
+ return 1;
+ }
+
+ imap_close_store(ctx);
+ return 0;
+}
+
#ifdef USE_CURL_FOR_IMAP_SEND
static CURL *setup_curl(struct imap_server_conf *srvc, struct credential *cred)
{
@@ -1612,11 +1638,13 @@ static CURL *setup_curl(struct imap_server_conf *srvc, struct credential *cred)
if (!path.len || path.buf[path.len - 1] != '/')
strbuf_addch(&path, '/');
- uri_encoded_folder = curl_easy_escape(curl, srvc->folder, 0);
- if (!uri_encoded_folder)
- die("failed to encode server folder");
- strbuf_addstr(&path, uri_encoded_folder);
- curl_free(uri_encoded_folder);
+ if (!list_folders) {
+ uri_encoded_folder = curl_easy_escape(curl, srvc->folder, 0);
+ if (!uri_encoded_folder)
+ die("failed to encode server folder");
+ strbuf_addstr(&path, uri_encoded_folder);
+ curl_free(uri_encoded_folder);
+ }
curl_easy_setopt(curl, CURLOPT_URL, path.buf);
strbuf_release(&path);
@@ -1647,10 +1675,6 @@ static CURL *setup_curl(struct imap_server_conf *srvc, struct credential *cred)
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, srvc->ssl_verify);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, srvc->ssl_verify);
- curl_easy_setopt(curl, CURLOPT_READFUNCTION, fread_buffer);
-
- curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-
if (0 < verbosity || getenv("GIT_CURL_VERBOSE"))
http_trace_curl_no_data();
setup_curl_trace(curl);
@@ -1669,6 +1693,10 @@ static int curl_append_msgs_to_imap(struct imap_server_conf *server,
struct credential cred = CREDENTIAL_INIT;
curl = setup_curl(server, &cred);
+
+ curl_easy_setopt(curl, CURLOPT_READFUNCTION, fread_buffer);
+ curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+
curl_easy_setopt(curl, CURLOPT_READDATA, &msgbuf);
fprintf(stderr, "sending %d message%s\n", total, (total != 1) ? "s" : "");
@@ -1714,6 +1742,31 @@ static int curl_append_msgs_to_imap(struct imap_server_conf *server,
return res != CURLE_OK;
}
+
+static int curl_list_imap_folders(struct imap_server_conf *server)
+{
+ CURL *curl;
+ CURLcode res = CURLE_OK;
+ struct credential cred = CREDENTIAL_INIT;
+
+ fprintf(stderr, "Fetching the list of available folders...\n");
+ curl = setup_curl(server, &cred);
+ res = curl_easy_perform(curl);
+
+ curl_easy_cleanup(curl);
+ curl_global_cleanup();
+
+ if (cred.username) {
+ if (res == CURLE_OK)
+ credential_approve(the_repository, &cred);
+ else if (res == CURLE_LOGIN_DENIED)
+ credential_reject(the_repository, &cred);
+ }
+
+ credential_clear(&cred);
+
+ return res != CURLE_OK;
+}
#endif
int cmd_main(int argc, const char **argv)
@@ -1754,11 +1807,6 @@ int cmd_main(int argc, const char **argv)
if (!server.port)
server.port = server.use_ssl ? 993 : 143;
- if (!server.folder) {
- fprintf(stderr, "no imap store specified\n");
- ret = 1;
- goto out;
- }
if (!server.host) {
if (!server.tunnel) {
fprintf(stderr, "no imap host specified\n");
@@ -1768,6 +1816,24 @@ int cmd_main(int argc, const char **argv)
server.host = xstrdup("tunnel");
}
+ if (list_folders) {
+ if (server.tunnel)
+ ret = list_imap_folders(&server);
+#ifdef USE_CURL_FOR_IMAP_SEND
+ else if (use_curl)
+ ret = curl_list_imap_folders(&server);
+#endif
+ else
+ ret = list_imap_folders(&server);
+ goto out;
+ }
+
+ if (!server.folder) {
+ fprintf(stderr, "no imap store specified\n");
+ ret = 1;
+ goto out;
+ }
+
/* read the messages */
if (strbuf_read(&all_msgs, 0, 0) < 0) {
error_errno(_("could not read from stdin"));
--
2.49.0
next prev parent reply other threads:[~2025-06-09 7:22 UTC|newest]
Thread overview: 248+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-22 17:27 [PATCH 0/2] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-05-22 17:27 ` [PATCH 1/2] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-05-22 18:00 ` Eric Sunshine
2025-05-22 18:04 ` Aditya Garg
2025-05-22 18:21 ` Aditya Garg
2025-05-22 18:25 ` Eric Sunshine
2025-05-22 18:28 ` Aditya Garg
2025-05-22 18:31 ` Jeff King
2025-05-22 18:33 ` Eric Sunshine
2025-05-24 16:28 ` Ben Knoble
2025-05-24 16:30 ` Aditya Garg
2025-05-24 16:32 ` Ben Knoble
2025-05-22 19:30 ` Aditya Garg
2025-05-22 19:32 ` Eric Sunshine
2025-05-22 19:40 ` Aditya Garg
2025-05-22 19:02 ` Junio C Hamano
2025-05-22 19:04 ` Aditya Garg
2025-05-22 18:29 ` Jeff King
2025-05-22 18:31 ` Aditya Garg
2025-05-22 17:27 ` [PATCH 2/2] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-05-22 19:45 ` brian m. carlson
2025-05-22 19:49 ` Aditya Garg
2025-05-22 19:49 ` [PATCH v2 0/3] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-05-22 19:49 ` [PATCH v2 1/3] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-05-22 23:27 ` Junio C Hamano
2025-05-22 19:49 ` [PATCH v2 2/3] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-05-22 19:49 ` [PATCH v2 3/3] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-05-23 3:58 ` [PATCH v3 0/3] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-05-23 3:58 ` [PATCH v3 1/3] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-05-23 3:58 ` [PATCH v3 2/3] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-05-23 3:58 ` [PATCH v3 3/3] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-05-23 12:14 ` [PATCH v4 0/4] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-05-23 12:14 ` [PATCH v4 1/4] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-05-23 12:14 ` [PATCH v4 2/4] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-05-23 12:14 ` [PATCH v4 3/4] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-05-23 12:14 ` [PATCH v4 4/4] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-05-25 18:54 ` [PATCH v5 0/6] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-05-25 18:54 ` [PATCH v5 1/6] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-05-25 18:54 ` [PATCH v5 2/6] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-05-25 18:54 ` [PATCH v5 3/6] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-05-25 18:55 ` [PATCH v5 4/6] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-05-25 18:55 ` [PATCH v5 5/6] imap-send: enable specifying the folder using the command line Aditya Garg
2025-05-25 18:55 ` [PATCH v5 6/6] imap-send: enable user to choose between libcurl and openssl using the config Aditya Garg
2025-05-25 20:34 ` [PATCH v5 0/6] imap-send: make it usable again and add OAuth2.0 support Eric Sunshine
2025-05-26 9:06 ` Aditya Garg
2025-05-28 7:38 ` [PATCH v6 " Aditya Garg
2025-05-28 7:38 ` [PATCH v6 1/6] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-05-28 7:38 ` [PATCH v6 2/6] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-05-28 7:38 ` [PATCH v6 3/6] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-05-28 7:38 ` [PATCH v6 4/6] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-05-28 7:38 ` [PATCH v6 5/6] imap-send: enable specifying the folder using the command line Aditya Garg
2025-05-28 7:38 ` [PATCH v6 6/6] imap-send: enable user to choose between libcurl and openssl using the config Aditya Garg
2025-05-28 17:17 ` [PATCH v7 0/9] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-05-28 17:17 ` [PATCH v7 1/9] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-05-28 17:17 ` [PATCH v7 2/9] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-05-28 17:17 ` [PATCH v7 3/9] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-05-28 17:17 ` [PATCH v7 4/9] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-05-28 17:17 ` [PATCH v7 5/9] imap-send: enable specifying the folder using the command line Aditya Garg
2025-05-28 17:17 ` [PATCH v7 6/9] imap-send: enable user to choose between libcurl and openssl using the config Aditya Garg
2025-05-29 13:58 ` Phillip Wood
2025-05-29 14:09 ` Aditya Garg
2025-05-29 16:25 ` Junio C Hamano
2025-05-29 16:28 ` Aditya Garg
2025-05-28 17:17 ` [PATCH v7 7/9] imap-send: fix numerous spelling and grammar mistakes in logs Aditya Garg
2025-05-28 17:17 ` [PATCH v7 8/9] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-05-28 17:17 ` [PATCH v7 9/9] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-05-29 16:21 ` [PATCH v8 0/9] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-05-29 16:21 ` [PATCH v8 1/9] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-05-29 16:21 ` [PATCH v8 2/9] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-05-29 16:21 ` [PATCH v8 3/9] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-05-29 16:21 ` [PATCH v8 4/9] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-05-29 16:21 ` [PATCH v8 5/9] imap-send: enable specifying the folder using the command line Aditya Garg
2025-05-29 16:21 ` [PATCH v8 6/9] imap-send: fix numerous spelling and grammar mistakes in logs Aditya Garg
2025-05-29 16:21 ` [PATCH v8 7/9] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-05-29 16:21 ` [PATCH v8 8/9] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-05-29 16:21 ` [PATCH v8 9/9] imap-send: add ability to list the available folders Aditya Garg
2025-05-30 17:32 ` [PATCH v9 0/9] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-05-30 17:32 ` [PATCH v9 1/9] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-05-30 17:32 ` [PATCH v9 2/9] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-05-30 20:51 ` Eric Sunshine
2025-05-30 21:12 ` Junio C Hamano
2025-05-31 9:06 ` Aditya Garg
2025-05-30 17:32 ` [PATCH v9 3/9] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-05-30 17:32 ` [PATCH v9 4/9] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-05-30 17:32 ` [PATCH v9 5/9] imap-send: enable specifying the folder using the command line Aditya Garg
2025-05-31 0:45 ` Junio C Hamano
2025-05-31 9:16 ` Aditya Garg
2025-06-01 2:40 ` Junio C Hamano
2025-06-01 4:41 ` Aditya Garg
2025-05-30 17:32 ` [PATCH v9 6/9] imap-send: fix numerous spelling and grammar mistakes in logs Aditya Garg
2025-05-30 17:32 ` [PATCH v9 7/9] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-05-30 17:32 ` [PATCH v9 8/9] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-05-30 17:32 ` [PATCH v9 9/9] imap-send: add ability to list the available folders Aditya Garg
2025-06-01 7:10 ` [PATCH v10 0/9] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-06-01 7:10 ` [PATCH v10 1/9] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-06-01 7:10 ` [PATCH v10 2/9] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-06-01 7:10 ` [PATCH v10 3/9] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-06-01 7:10 ` [PATCH v10 4/9] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-06-01 7:10 ` [PATCH v10 5/9] imap-send: enable specifying the folder using the command line Aditya Garg
2025-06-01 7:10 ` [PATCH v10 6/9] imap-send: fix numerous spelling and grammar mistakes in logs Aditya Garg
2025-06-01 7:28 ` Eric Sunshine
2025-06-01 7:30 ` Aditya Garg
2025-06-01 7:32 ` Aditya Garg
2025-06-01 7:10 ` [PATCH v10 7/9] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-06-01 7:10 ` [PATCH v10 8/9] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-06-01 7:10 ` [PATCH v10 9/9] imap-send: add ability to list the available folders Aditya Garg
2025-06-01 8:38 ` [PATCH v11 0/9] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-06-01 8:38 ` [PATCH v11 1/9] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-06-01 8:38 ` [PATCH v11 2/9] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-06-02 0:13 ` Junio C Hamano
2025-06-01 8:38 ` [PATCH v11 3/9] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-06-02 0:27 ` Junio C Hamano
2025-06-02 4:01 ` Aditya Garg
2025-06-01 8:38 ` [PATCH v11 4/9] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-06-01 8:38 ` [PATCH v11 5/9] imap-send: enable specifying the folder using the command line Aditya Garg
2025-06-02 0:39 ` Junio C Hamano
2025-06-02 3:45 ` Aditya Garg
2025-06-01 8:38 ` [PATCH v11 6/9] imap-send: fix minor mistakes in the logs Aditya Garg
2025-06-02 0:42 ` Junio C Hamano
2025-06-02 3:41 ` Aditya Garg
2025-06-01 8:38 ` [PATCH v11 7/9] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-06-01 8:38 ` [PATCH v11 8/9] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-06-02 0:43 ` Junio C Hamano
2025-06-01 8:38 ` [PATCH v11 9/9] imap-send: add ability to list the available folders Aditya Garg
2025-06-02 10:59 ` [PATCH v12 00/10] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-06-02 10:59 ` [PATCH v12 01/10] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-06-02 10:59 ` [PATCH v12 02/10] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-06-05 8:00 ` Jeff King
2025-06-05 8:12 ` Aditya Garg
2025-06-05 16:08 ` Junio C Hamano
2025-06-05 16:17 ` Aditya Garg
2025-06-05 16:28 ` Junio C Hamano
2025-06-05 22:50 ` Jeff King
2025-06-02 10:59 ` [PATCH v12 03/10] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-06-02 10:59 ` [PATCH v12 04/10] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-06-02 10:59 ` [PATCH v12 05/10] imap-send: gracefully fail if CRAM-MD5 authentication is requested without OpenSSL Aditya Garg
2025-06-02 10:59 ` [PATCH v12 06/10] imap-send: enable specifying the folder using the command line Aditya Garg
2025-06-02 10:59 ` [PATCH v12 07/10] imap-send: fix minor mistakes in the logs Aditya Garg
2025-06-02 10:59 ` [PATCH v12 08/10] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-06-02 10:59 ` [PATCH v12 09/10] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-06-02 10:59 ` [PATCH v12 10/10] imap-send: add ability to list the available folders Aditya Garg
2025-06-05 8:42 ` [PATCH v13 00/10] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-06-05 8:42 ` [PATCH v13 01/10] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-06-05 8:42 ` [PATCH v13 02/10] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-06-05 16:33 ` Junio C Hamano
2025-06-05 17:16 ` Aditya Garg
2025-06-05 18:48 ` Junio C Hamano
2025-06-06 3:28 ` Aditya Garg
2025-06-06 4:04 ` Aditya Garg
2025-06-06 4:35 ` Junio C Hamano
2025-06-06 4:40 ` Aditya Garg
2025-06-05 8:42 ` [PATCH v13 04/10] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-06-05 8:42 ` [PATCH v13 03/10] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-06-05 8:42 ` [PATCH v13 05/10] imap-send: gracefully fail if CRAM-MD5 authentication is requested without OpenSSL Aditya Garg
2025-06-05 8:42 ` [PATCH v13 06/10] imap-send: enable specifying the folder using the command line Aditya Garg
2025-06-05 8:42 ` [PATCH v13 07/10] imap-send: fix minor mistakes in the logs Aditya Garg
2025-06-05 8:42 ` [PATCH v13 08/10] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-06-05 8:42 ` [PATCH v13 09/10] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-06-05 8:42 ` [PATCH v13 10/10] imap-send: add ability to list the available folders Aditya Garg
2025-06-06 20:06 ` [PATCH v14 00/10] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-06-06 20:06 ` [PATCH v14 01/10] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-06-06 20:06 ` [PATCH v14 02/10] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-06-06 20:06 ` [PATCH v14 03/10] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-06-06 20:06 ` [PATCH v14 04/10] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-06-06 20:06 ` [PATCH v14 05/10] imap-send: gracefully fail if CRAM-MD5 authentication is requested without OpenSSL Aditya Garg
2025-06-07 15:32 ` Junio C Hamano
2025-06-07 17:13 ` Aditya Garg
2025-06-08 4:20 ` Junio C Hamano
2025-06-08 7:54 ` Aditya Garg
2025-06-08 10:56 ` Aditya Garg
2025-06-06 20:06 ` [PATCH v14 06/10] imap-send: enable specifying the folder using the command line Aditya Garg
2025-06-06 20:06 ` [PATCH v14 07/10] imap-send: fix minor mistakes in the logs Aditya Garg
2025-06-06 20:06 ` [PATCH v14 08/10] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-06-06 20:06 ` [PATCH v14 09/10] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-06-06 20:06 ` [PATCH v14 10/10] imap-send: add ability to list the available folders Aditya Garg
2025-06-08 10:55 ` [PATCH v15 00/10] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-06-08 10:55 ` [PATCH v15 01/10] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-06-08 10:55 ` [PATCH v15 02/10] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-06-08 10:55 ` [PATCH v15 03/10] imap-send: gracefully fail if CRAM-MD5 authentication is requested without OpenSSL Aditya Garg
2025-06-08 10:55 ` [PATCH v15 04/10] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-06-08 10:55 ` [PATCH v15 05/10] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-06-08 10:55 ` [PATCH v15 06/10] imap-send: enable specifying the folder using the command line Aditya Garg
2025-06-08 10:55 ` [PATCH v15 07/10] imap-send: fix minor mistakes in the logs Aditya Garg
2025-06-08 10:55 ` [PATCH v15 08/10] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-06-08 10:55 ` [PATCH v15 09/10] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-06-08 10:55 ` [PATCH v15 10/10] imap-send: add ability to list the available folders Aditya Garg
2025-06-08 20:50 ` [PATCH v15 00/10] imap-send: make it usable again and add OAuth2.0 support Junio C Hamano
2025-06-09 4:31 ` Aditya Garg
2025-06-09 7:23 ` Aditya Garg
2025-06-09 7:20 ` [PATCH v16 " Aditya Garg
2025-06-09 7:20 ` [PATCH v16 01/10] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-06-09 7:20 ` [PATCH v16 02/10] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-06-09 7:20 ` [PATCH v16 03/10] imap-send: gracefully fail if CRAM-MD5 authentication is requested without OpenSSL Aditya Garg
2025-06-09 19:15 ` Junio C Hamano
2025-06-09 19:20 ` Aditya Garg
2025-06-09 7:20 ` [PATCH v16 04/10] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-06-09 7:20 ` [PATCH v16 05/10] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-06-09 7:20 ` [PATCH v16 06/10] imap-send: enable specifying the folder using the command line Aditya Garg
2025-06-09 18:33 ` Junio C Hamano
2025-06-09 7:20 ` Aditya Garg [this message]
2025-06-09 18:42 ` [PATCH v16 07/10] imap-send: add ability to list the available folders Junio C Hamano
2025-06-09 7:20 ` [PATCH v16 08/10] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-06-09 18:55 ` Junio C Hamano
2025-06-09 19:02 ` Aditya Garg
2025-06-09 20:14 ` Junio C Hamano
2025-06-09 7:20 ` [PATCH v16 09/10] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-06-09 18:57 ` Junio C Hamano
2025-06-09 19:05 ` Aditya Garg
2025-06-09 7:20 ` [PATCH v16 10/10] imap-send: fix minor mistakes in the logs Aditya Garg
2025-06-09 15:41 ` [PATCH v17 00/10] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-06-09 15:41 ` [PATCH v17 01/10] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-06-09 15:41 ` [PATCH v17 02/10] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-06-09 15:41 ` [PATCH v17 03/10] imap-send: gracefully fail if CRAM-MD5 authentication is requested without OpenSSL Aditya Garg
2025-06-09 15:41 ` [PATCH v17 04/10] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-06-09 15:41 ` [PATCH v17 05/10] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-06-09 15:41 ` [PATCH v17 06/10] imap-send: enable specifying the folder using the command line Aditya Garg
2025-06-09 15:41 ` [PATCH v17 07/10] imap-send: add ability to list the available folders Aditya Garg
2025-06-09 15:41 ` [PATCH v17 08/10] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-06-09 15:41 ` [PATCH v17 09/10] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-06-09 15:41 ` [PATCH v17 10/10] imap-send: fix minor mistakes in the logs Aditya Garg
2025-06-09 20:22 ` [PATCH v18 00/10] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-06-09 20:22 ` [PATCH v18 01/10] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-06-09 20:22 ` [PATCH v18 02/10] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-06-09 20:22 ` [PATCH v18 03/10] imap-send: gracefully fail if CRAM-MD5 authentication is requested without OpenSSL Aditya Garg
2025-06-09 20:22 ` [PATCH v18 04/10] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-06-17 10:27 ` Phillip Wood
2025-06-20 5:16 ` Aditya Garg
2025-06-20 7:00 ` Aditya Garg
2025-06-09 20:22 ` [PATCH v18 05/10] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-06-09 20:22 ` [PATCH v18 06/10] imap-send: enable specifying the folder using the command line Aditya Garg
2025-06-09 20:22 ` [PATCH v18 07/10] imap-send: add ability to list the available folders Aditya Garg
2025-06-09 20:22 ` [PATCH v18 08/10] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-06-09 20:22 ` [PATCH v18 09/10] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-06-09 20:22 ` [PATCH v18 10/10] imap-send: fix minor mistakes in the logs Aditya Garg
2025-06-20 6:40 ` [PATCH v19 00/10] imap-send: make it usable again and add OAuth2.0 support Aditya Garg
2025-06-20 6:40 ` [PATCH v19 01/10] imap-send: fix bug causing cfg->folder being set to NULL Aditya Garg
2025-06-20 6:40 ` [PATCH v19 02/10] imap-send: fix memory leak in case auth_cram_md5 fails Aditya Garg
2025-06-20 6:40 ` [PATCH v19 03/10] imap-send: gracefully fail if CRAM-MD5 authentication is requested without OpenSSL Aditya Garg
2025-06-20 6:40 ` [PATCH v19 04/10] imap-send: add support for OAuth2.0 authentication Aditya Garg
2025-06-20 6:40 ` [PATCH v19 05/10] imap-send: add PLAIN authentication method to OpenSSL Aditya Garg
2025-06-20 6:40 ` [PATCH v19 06/10] imap-send: enable specifying the folder using the command line Aditya Garg
2025-06-20 6:40 ` [PATCH v19 07/10] imap-send: add ability to list the available folders Aditya Garg
2025-06-20 6:40 ` [PATCH v19 08/10] imap-send: display port alongwith host when git credential is invoked Aditya Garg
2025-06-20 6:40 ` [PATCH v19 09/10] imap-send: display the destination mailbox when sending a message Aditya Garg
2025-06-20 6:40 ` [PATCH v19 10/10] imap-send: fix minor mistakes in the logs Aditya Garg
2025-06-20 15:50 ` [PATCH v19 00/10] imap-send: make it usable again and add OAuth2.0 support Junio C Hamano
2025-06-23 9:09 ` Phillip Wood
2025-06-23 16:27 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=PN3PR01MB9597440624DB4F9871F069FAB86BA@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM \
--to=gargaditya08@live.com \
--cc=ben.knoble@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
--cc=phillip.wood123@gmail.com \
--cc=sandals@crustytoothpaste.net \
--cc=sunshine@sunshineco.com \
--cc=ziyao@disroot.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).