Added an endpoint type, client or server, to the wolfSSH context

constructor. (For future use.)
pull/1/head
John Safranek 2014-08-11 14:45:03 -07:00
parent 490fd75fa9
commit bf052f42c9
3 changed files with 14 additions and 3 deletions

View File

@ -269,7 +269,7 @@ int main(void)
exit(EXIT_FAILURE);
}
ctx = wolfSSH_CTX_new(NULL);
ctx = wolfSSH_CTX_new(WOLFSSH_SERVER, NULL);
if (ctx == NULL) {
fprintf(stderr, "Couldn't allocate SSH CTX data.\n");
exit(EXIT_FAILURE);

View File

@ -66,12 +66,17 @@ static WOLFSSH_CTX* CtxInit(WOLFSSH_CTX* ctx, void* heap)
}
WOLFSSH_CTX* wolfSSH_CTX_new(void* heap)
WOLFSSH_CTX* wolfSSH_CTX_new(uint8_t side, void* heap)
{
WOLFSSH_CTX* ctx;
WLOG(WS_LOG_DEBUG, "Enter wolfSSH_CTX_new()");
if (side != WOLFSSH_SERVER && side != WOLFSSH_CLIENT) {
WLOG(WS_LOG_DEBUG, "Invalid endpoint type");
return NULL;
}
ctx = (WOLFSSH_CTX*)WMALLOC(sizeof(WOLFSSH_CTX), heap, WOLFSSH_CTX_TYPE);
ctx = CtxInit(ctx, heap);

View File

@ -44,7 +44,7 @@ WOLFSSH_API int wolfSSH_Debugging_ON(void);
WOLFSSH_API void wolfSSH_Debugging_OFF(void);
/* context functions */
WOLFSSH_API WOLFSSH_CTX* wolfSSH_CTX_new(void*);
WOLFSSH_API WOLFSSH_CTX* wolfSSH_CTX_new(uint8_t, void*);
WOLFSSH_API void wolfSSH_CTX_free(WOLFSSH_CTX*);
/* ssh session functions */
@ -73,6 +73,12 @@ WOLFSSH_API void* wolfSSH_GetIOWriteCtx(WOLFSSH* ssh);
WOLFSSH_API int wolfSSH_accept(WOLFSSH* ssh);
enum WS_EndpointTypes {
WOLFSSH_SERVER = 0,
WOLFSSH_CLIENT = 1
};
/* dynamic memory types */
enum WS_DynamicTypes {
WOLFSSH_CTX_TYPE = 1,