aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/CMakeLists.txt1
-rw-r--r--plugins/samples/AuthLogin.c (renamed from plugins/samples/ClientLogin.c)0
-rw-r--r--plugins/samples/CMakeLists.txt49
-rw-r--r--plugins/samples/DemoContext.c (renamed from plugins/samples/ClientCtx.c)0
-rw-r--r--plugins/samples/DemoPost.c (renamed from plugins/samples/SamplePost.c)0
-rw-r--r--plugins/session/CMakeLists.txt10
-rw-r--r--plugins/session/export.map1
-rw-r--r--plugins/session/token-api.c127
-rw-r--r--test/token-websock.qml6
9 files changed, 40 insertions, 154 deletions
diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt
index 5f830fb1..c8928b53 100644
--- a/plugins/CMakeLists.txt
+++ b/plugins/CMakeLists.txt
@@ -1,4 +1,3 @@
-ADD_SUBDIRECTORY(session)
ADD_SUBDIRECTORY(samples)
ADD_SUBDIRECTORY(audio)
ADD_SUBDIRECTORY(radio)
diff --git a/plugins/samples/ClientLogin.c b/plugins/samples/AuthLogin.c
index efecf240..efecf240 100644
--- a/plugins/samples/ClientLogin.c
+++ b/plugins/samples/AuthLogin.c
diff --git a/plugins/samples/CMakeLists.txt b/plugins/samples/CMakeLists.txt
index 9f600c82..eb6e0112 100644
--- a/plugins/samples/CMakeLists.txt
+++ b/plugins/samples/CMakeLists.txt
@@ -1,33 +1,57 @@
INCLUDE_DIRECTORIES(${include_dirs})
-ADD_LIBRARY(helloWorld-api MODULE HelloWorld.c)
-SET_TARGET_PROPERTIES(helloWorld-api PROPERTIES
+##################################################
+# AuthLogin
+##################################################
+ADD_LIBRARY(authLogin MODULE AuthLogin.c)
+SET_TARGET_PROPERTIES(authLogin PROPERTIES
PREFIX ""
LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
)
-TARGET_LINK_LIBRARIES(helloWorld-api ${link_libraries})
-INSTALL(TARGETS helloWorld-api
+TARGET_LINK_LIBRARIES(authLogin ${link_libraries})
+INSTALL(TARGETS authLogin
LIBRARY DESTINATION ${plugin_install_dir})
-ADD_LIBRARY(samplePost-api MODULE SamplePost.c)
-SET_TARGET_PROPERTIES(samplePost-api PROPERTIES
+##################################################
+# DemoContext
+##################################################
+ADD_LIBRARY(demoContext MODULE DemoContext.c)
+SET_TARGET_PROPERTIES(demoContext PROPERTIES
PREFIX ""
LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
)
-TARGET_LINK_LIBRARIES(samplePost-api ${link_libraries})
-INSTALL(TARGETS samplePost-api
+TARGET_LINK_LIBRARIES(demoContext ${link_libraries})
+INSTALL(TARGETS demoContext
LIBRARY DESTINATION ${plugin_install_dir})
-ADD_LIBRARY(clientCtx-api MODULE ClientCtx.c)
-SET_TARGET_PROPERTIES(clientCtx-api PROPERTIES
+##################################################
+# DemoPost
+##################################################
+ADD_LIBRARY(demoPost MODULE DemoPost.c)
+SET_TARGET_PROPERTIES(demoPost PROPERTIES
PREFIX ""
LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
)
-TARGET_LINK_LIBRARIES(clientCtx-api ${link_libraries})
-INSTALL(TARGETS clientCtx-api
+TARGET_LINK_LIBRARIES(demoPost ${link_libraries})
+INSTALL(TARGETS demoPost
LIBRARY DESTINATION ${plugin_install_dir})
+##################################################
+# HelloWorld
+##################################################
+ADD_LIBRARY(helloWorld MODULE HelloWorld.c)
+SET_TARGET_PROPERTIES(helloWorld PROPERTIES
+ PREFIX ""
+ LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
+)
+TARGET_LINK_LIBRARIES(helloWorld ${link_libraries})
+INSTALL(TARGETS helloWorld
+ LIBRARY DESTINATION ${plugin_install_dir})
+
+##################################################
+# tic-tac-toe
+##################################################
ADD_LIBRARY(tic-tac-toe MODULE tic-tac-toe.c)
SET_TARGET_PROPERTIES(tic-tac-toe PROPERTIES
PREFIX ""
@@ -36,3 +60,4 @@ SET_TARGET_PROPERTIES(tic-tac-toe PROPERTIES
TARGET_LINK_LIBRARIES(tic-tac-toe ${link_libraries})
INSTALL(TARGETS tic-tac-toe
LIBRARY DESTINATION ${plugin_install_dir})
+
diff --git a/plugins/samples/ClientCtx.c b/plugins/samples/DemoContext.c
index ef703759..ef703759 100644
--- a/plugins/samples/ClientCtx.c
+++ b/plugins/samples/DemoContext.c
diff --git a/plugins/samples/SamplePost.c b/plugins/samples/DemoPost.c
index b61b91c4..b61b91c4 100644
--- a/plugins/samples/SamplePost.c
+++ b/plugins/samples/DemoPost.c
diff --git a/plugins/session/CMakeLists.txt b/plugins/session/CMakeLists.txt
deleted file mode 100644
index e13a16b3..00000000
--- a/plugins/session/CMakeLists.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-
-ADD_LIBRARY(token-api MODULE token-api.c)
-SET_TARGET_PROPERTIES(token-api PROPERTIES
- PREFIX ""
- LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
-)
-TARGET_LINK_LIBRARIES(token-api ${link_libraries})
-INCLUDE_DIRECTORIES(${include_dirs})
-INSTALL(TARGETS token-api
- LIBRARY DESTINATION ${plugin_install_dir})
diff --git a/plugins/session/export.map b/plugins/session/export.map
deleted file mode 100644
index e2da85ca..00000000
--- a/plugins/session/export.map
+++ /dev/null
@@ -1 +0,0 @@
-{ global: pluginAfbV1Register; local: *; };
diff --git a/plugins/session/token-api.c b/plugins/session/token-api.c
deleted file mode 100644
index d550c20d..00000000
--- a/plugins/session/token-api.c
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Copyright (C) 2015, 2016 "IoT.bzh"
- * Author "Fulup Ar Foll"
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define _GNU_SOURCE
-#include <stdio.h>
-#include <json-c/json.h>
-
-#include <afb/afb-plugin.h>
-
-// Dummy sample of Client Application Context
-typedef struct {
- int something;
- void *whateveryouwant;
-} MyClientApplicationHandle;
-
-
-// This function is call when Client Session Context is removed
-// Note: when freeCtxCB==NULL standard free/malloc is called
-static void clientContextFree(void *context) {
- fprintf (stderr,"Plugin[token] Closing Session\n");
- free (context);
-}
-
-// Request Creation of new context if it does not exist
-static void clientContextLogin (struct afb_req request)
-{
- json_object *jresp;
-
- // add an application specific client context to session
- afb_req_context_set(request, malloc (sizeof (MyClientApplicationHandle)), clientContextFree);
-
- // Send response to UI
- jresp = json_object_new_object();
- json_object_object_add(jresp, "token", json_object_new_string ("A New Token and Session Context Was Created"));
-
- afb_req_success(request, jresp, NULL);
-
- afb_req_session_set_LOA(request, 1);
-}
-
-// Before entering here token will be check and renew
-static void clientContextRefresh (struct afb_req request) {
- json_object *jresp;
-
-
- jresp = json_object_new_object();
- json_object_object_add(jresp, "token", json_object_new_string ("Token was refreshed"));
-
- afb_req_success(request, jresp, NULL);
-}
-
-
-// Session token will we verified before entering here
-static void clientContextCheck (struct afb_req request) {
-
- json_object *jresp = json_object_new_object();
- json_object_object_add(jresp, "isvalid", json_object_new_boolean (TRUE));
-
- afb_req_success(request, jresp, NULL);
-}
-
-
-// Close and Free context
-static void clientContextLogout (struct afb_req request) {
- json_object *jresp;
-
- /* after this call token will be reset
- * - no further access to API will be possible
- * - every context from any used plugin will be freed
- */
-
- jresp = json_object_new_object();
- json_object_object_add(jresp, "info", json_object_new_string ("Token and all resources are released"));
-
- // WARNING: if you free context resource manually here do not forget to set *request.context=NULL;
- afb_req_success(request, jresp, NULL);
-
- afb_req_session_set_LOA(request, 0);
-}
-// Close and Free context
-static void clientGetPing (struct afb_req request) {
- static int count=0;
- json_object *jresp;
-
- jresp = json_object_new_object();
- json_object_object_add(jresp, "count", json_object_new_int (count ++));
-
- afb_req_success(request, jresp, NULL);
-}
-
-
-static const struct AFB_verb_desc_v1 verbs[]= {
- {"ping" , AFB_SESSION_NONE , clientGetPing ,"Ping Rest Test Service"},
- {"login" , AFB_SESSION_LOA_EQ_0 | AFB_SESSION_RENEW, clientContextLogin ,"Login Client"},
- {"refresh" , AFB_SESSION_LOA_GE_1 | AFB_SESSION_RENEW, clientContextRefresh,"Refresh Client Authentication Token"},
- {"check" , AFB_SESSION_LOA_GE_1 , clientContextCheck ,"Check Client Authentication Token"},
- {"logout" , AFB_SESSION_LOA_GE_1 | AFB_SESSION_CLOSE, clientContextLogout ,"Logout Client and Free resources"},
- {NULL}
-};
-
-static const struct AFB_plugin plugin_desc = {
- .type = AFB_PLUGIN_VERSION_1,
- .v1 = {
- .info = "Application Framework Binder Authentication sample",
- .prefix = "auth",
- .verbs = verbs
- }
-};
-
-const struct AFB_plugin *pluginAfbV1Register (const struct AFB_interface *itf)
-{
- return &plugin_desc;
-}
diff --git a/test/token-websock.qml b/test/token-websock.qml
index d8665c71..38e59362 100644
--- a/test/token-websock.qml
+++ b/test/token-websock.qml
@@ -7,7 +7,7 @@ Window {
property string address_str: "ws://localhost:1234/api?token=123456"
property string token_str: ""
- property string api_str: "token"
+ property string api_str: "auth"
property string verb_str: ""
property var msgid_enu: { "call":2, "retok":3, "reterr":4, "event":5 }
property string request_str: ""
@@ -91,7 +91,7 @@ Window {
id: create_button
text: "Create token"
onClicked: {
- verb_str = "create"
+ verb_str = "connect"
request_str = '[' + msgid_enu.call + ',"99999","' + api_str+'/'+verb_str + '", ]';
if (!websocket.active)
websocket.active = true
@@ -115,7 +115,7 @@ Window {
id: reset_button
text: "Reset token"
onClicked: {
- verb_str = "reset"
+ verb_str = "logout"
request_str = '[' + msgid_enu.call + ',"99999","' + api_str+'/'+verb_str + '", ]';
websocket.sendTextMessage (request_str)
}