Skip to content

Commit

Permalink
Add openconnect_set_cookie function to library and jni
Browse files Browse the repository at this point in the history
Signed-off-by: Randy Moss <kasaxet794@homedepinst.com>
  • Loading branch information
Randy Moss committed May 15, 2020
1 parent 8d33973 commit 5b3d3a8
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 1 deletion.
8 changes: 8 additions & 0 deletions jni.c
Expand Up @@ -1353,6 +1353,14 @@ JNIEXPORT void JNICALL Java_org_infradead_libopenconnect_LibOpenConnect_setUrlpa
SET_STRING_END();
}

JNIEXPORT void JNICALL Java_org_infradead_libopenconnect_LibOpenConnect_setCookie(
JNIEnv *jenv, jobject jobj, jstring jarg)
{
SET_STRING_START_VOID()
openconnect_set_cookie(ctx->vpninfo, arg);
SET_STRING_END();
}

JNIEXPORT void JNICALL Java_org_infradead_libopenconnect_LibOpenConnect_setLocalName(
JNIEnv *jenv, jobject jobj, jstring jarg)
{
Expand Down
5 changes: 5 additions & 0 deletions libopenconnect.map.in
Expand Up @@ -108,6 +108,11 @@ OPENCONNECT_5_6 {
openconnect_set_trojan_interval;
} OPENCONNECT_5_5;

OPENCONNECT_5_7 {
global:
openconnect_set_cookie;
} OPENCONNECT_5_6;

OPENCONNECT_PRIVATE {
global: @SYMVER_TIME@ @SYMVER_GETLINE@ @SYMVER_JAVA@ @SYMVER_ASPRINTF@ @SYMVER_VASPRINTF@ @SYMVER_WIN32_STRERROR@
openconnect_get_tls_library_version;
Expand Down
9 changes: 9 additions & 0 deletions library.c
Expand Up @@ -671,6 +671,15 @@ void openconnect_clear_cookie(struct openconnect_info *vpninfo)
memset(vpninfo->cookie, 0, strlen(vpninfo->cookie));
}

int openconnect_set_cookie(struct openconnect_info *vpninfo,
const char *cookie)
{
UTF8CHECK(cookie);

STRDUP(vpninfo->cookie, cookie);
return 0;
}

void openconnect_reset_ssl(struct openconnect_info *vpninfo)
{
vpninfo->got_cancel_cmd = 0;
Expand Down
6 changes: 5 additions & 1 deletion openconnect.h
Expand Up @@ -33,9 +33,12 @@ extern "C" {
#endif

#define OPENCONNECT_API_VERSION_MAJOR 5
#define OPENCONNECT_API_VERSION_MINOR 6
#define OPENCONNECT_API_VERSION_MINOR 7

/*
* API version 5.7:
* - Add openconnect_set_cookie()
*
* API version 5.6 (v8.06; 2020-03-31):
* - Add openconnect_set_trojan_interval()
*
Expand Down Expand Up @@ -540,6 +543,7 @@ int openconnect_get_ip_info(struct openconnect_info *,

int openconnect_get_port(struct openconnect_info *);
const char *openconnect_get_cookie(struct openconnect_info *);
int openconnect_set_cookie(struct openconnect_info *, const char *);
void openconnect_clear_cookie(struct openconnect_info *);

void openconnect_disable_ipv6(struct openconnect_info *vpninfo);
Expand Down

0 comments on commit 5b3d3a8

Please sign in to comment.