diff options
author | Matt Ranostay <matt.ranostay@konsulko.com> | 2017-06-29 20:15:36 -0700 |
---|---|---|
committer | Matt Ranostay <matt.ranostay@konsulko.com> | 2017-06-30 11:59:16 -0700 |
commit | c6c94220fa7a1311cb60a01d4f009fb559d3b720 (patch) | |
tree | 253a0bfaf56d6e29175b44abfcc8572221474261 /binding-bluetooth/bluetooth-agent.h | |
parent | 087d927a058437a3f6379024705534365a403768 (diff) |
binding: bluetooth: make system wide service
Allow Bluetooth binding to be build separately and installed
as a system wide service
Bug-AGL: SPEC-661 SPEC-715
Change-Id: I12feefa2908243aa3bdcb0341f9bc9654c23741e
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
Diffstat (limited to 'binding-bluetooth/bluetooth-agent.h')
-rw-r--r-- | binding-bluetooth/bluetooth-agent.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/binding-bluetooth/bluetooth-agent.h b/binding-bluetooth/bluetooth-agent.h new file mode 100644 index 0000000..2b4b78a --- /dev/null +++ b/binding-bluetooth/bluetooth-agent.h @@ -0,0 +1,67 @@ +/* Copyright 2016 ALPS ELECTRIC CO., LTD. +* +* 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. +*/ + + +#ifndef BLUETOOTH_AGENT_H +#define BLUETOOTH_AGENT_H + +#include <glib.h> +#include <gio/gio.h> +#include <glib-object.h> + +#include "lib_agent.h" +#include "bluetooth-manager.h" + +//#define AGENT_THREAD +#define REQUEST_PINCCODE 1 +#define REQUEST_PASSKEY 2 +#define REQUEST_CONFIRMATION 3 +#define REQUEST_AUTHORIZATION 4 + +struct Agent_Node +{ + int type; + AGENTOrgBluezAgent1 *object; + GDBusMethodInvocation *invocation; +}; + +typedef struct tagAgent_RegisterCallback +{ + void (*agent_Release)(void); + gboolean (*agent_RequestPinCode) (const gchar *device, gchar **pincode, const gchar **error); + gboolean (*agent_DisplayPinCode)(const gchar *device, const gchar *pincode, const gchar **error); + gboolean (*agent_RequestPasskey)(const gchar *device, guint *passkey, const gchar **error); + void (*agent_DisplayPasskey)(const gchar *device, guint passkey, guint16 entered); + gboolean (*agent_RequestConfirmation)(const gchar *device, guint passkey, const gchar **error); + gboolean (*agent_RequestAuthorization)(const gchar *device, const gchar **error); + gboolean (*agent_AuthorizeService)(const gchar *device, const gchar *uuid, const gchar **error); + void (*agent_Cancel)(void); +}Agent_RegisterCallback_t; + + + +/* --- PUBLIC FUNCTIONS --- */ +void agent_API_register(const Agent_RegisterCallback_t* pstRegisterCallback); + +int agent_register(const char *capability); +int stop_agent(); + +int agent_send_confirmation(gboolean confirmation); + +#endif /* BLUETOOTH_AGENT_H */ + + +/****************************** The End Of File ******************************/ + |