Skip to content

Commit

Permalink
http_jmap.c: add "urn:ietf:params:jmap:core:backendInfo" capability
Browse files Browse the repository at this point in the history
  • Loading branch information
ksmurchison committed Mar 20, 2024
1 parent fda0d0a commit a65bf61
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 0 deletions.
19 changes: 19 additions & 0 deletions imap/http_jmap.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
#include <config.h>

#include <errno.h>
#include <sys/utsname.h>

#include "acl.h"
#include "append.h"
Expand Down Expand Up @@ -206,6 +207,24 @@ static void jmap_init(struct buf *serverinfo)
"url", "wss:" JMAP_BASE_URL JMAP_WS_COL,
"supportsPush", jmap_push_poll));
}

if (config_serverinfo == IMAP_ENUM_SERVERINFO_ON) {
struct utsname buf;

uname(&buf);
json_object_set_new(my_jmap_settings.server_capabilities,
JMAP_URN_CORE_INFO,
json_pack("{s:{s:s s:s} s:{s:s s:s} s:{s:s s:s}}",
"apiBackend",
"name", "Cyrus JMAP",
"version", CYRUS_VERSION,
"product",
"name", "Cyrus JMAP",
"version", CYRUS_VERSION,
"environment",
"name", buf.sysname,
"version", buf.release));
}
}

static int jmap_auth(const char *userid __attribute__((unused)))
Expand Down
1 change: 1 addition & 0 deletions imap/jmap_api.h
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@
#include "strarray.h"

#define JMAP_URN_CORE "urn:ietf:params:jmap:core"
#define JMAP_URN_CORE_INFO "urn:ietf:params:jmap:core:backendInfo"
#define JMAP_URN_MAIL "urn:ietf:params:jmap:mail"
#define JMAP_URN_SUBMISSION "urn:ietf:params:jmap:submission"
#define JMAP_URN_VACATION "urn:ietf:params:jmap:vacationresponse"
Expand Down

0 comments on commit a65bf61

Please sign in to comment.