/usr/include/x86_64-linux-gnu/aj_connect.h is in liballjoyntcl-dev-1504 15.04b-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 | #ifndef _AJ_CONNECT_H
#define _AJ_CONNECT_H
/**
* @file aj_connect.h
* @defgroup aj_connect Bus Connection Management
* @{
*/
/******************************************************************************
* Copyright AllSeen Alliance. All rights reserved.
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
******************************************************************************/
#include "aj_target.h"
#include "aj_status.h"
#include "aj_bus.h"
#include "aj_disco.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* Set the minimum acceptable routing node protocol version.
*
* @param min Minimum acceptable protocol version
*/
void AJ_SetMinProtoVersion(uint8_t min);
/**
* Set the amount of time to wait for routing node responses.
*
* @param selection time for selecting routing node responses
*/
void AJ_SetSelectionTimeout(uint32_t selection);
/**
* Get the minimum acceptable routing node protocol version.
*
* @return Minimum acceptable protocol version
*/
uint8_t AJ_GetMinProtoVersion();
/**
* Get the routing nodes protocol version
*
* @return The routing nodes protocol version
* 0 if not connected to a routing node
*/
AJ_EXPORT
uint8_t AJ_GetRoutingProtoVersion(void);
/**
* Authenticate with the daemon
*
* @param bus The bus attachment to authenticate
*
* @return Return AJ_Status
*/
AJ_Status AJ_Authenticate(AJ_BusAttachment* bus);
/**
* Establish an AllJoyn connection.
*
* @param bus The bus attachment to connect.
* @param serviceName Name of a specific service to connect to, NULL for the default name.
* @param timeout How long to spend attempting to connect
*
* @return
* - AJ_OK if the connection was succesfully established
* - AJ_ERR_TIMEOUT if the connection attempt timed out
*/
AJ_EXPORT
AJ_Status AJ_Connect(AJ_BusAttachment* bus, const char* serviceName, uint32_t timeout);
#ifdef AJ_ARDP
/**
* Establish an ARDP-based AllJoyn UDP connection.
*
* @param bus The bus attachment to connect.
* @param context The context that will be used to send and receive data
* @param service The connection information
* @param netSock The netSock
*
* @return
* - AJ_OK if the connection was succesfully established
* - AJ_ERR_TIMEOUT if the connection attempt timed out
*/
AJ_EXPORT
AJ_Status AJ_ARDP_UDP_Connect(AJ_BusAttachment* bus, void* context, const AJ_Service* service, AJ_NetSocket* netSock);
#endif
/**
* Find a daemon, connect to it and then authenticate.
*
* @param bus The bus attachment to connect.
* @param serviceName Name of a specific service to connect to, NULL for the default name.
* @param timeout How long to spend attempting to connect
*
* @return
* - AJ_OK if the connection was succesfully established
* - AJ_ERR_TIMEOUT if the connection attempt timed out
*/
AJ_EXPORT
AJ_Status AJ_FindBusAndConnect(AJ_BusAttachment* bus, const char* serviceName, uint32_t timeout);
/**
* Terminate an AllJoyn connection
*
* @param bus The bus attachment to disconnect.
*/
AJ_EXPORT
void AJ_Disconnect(AJ_BusAttachment* bus);
/**
* Bus authentication password function prototype for requesting a
* password (to authenticate with the daemon) from the application.
*
* @param buffer The buffer to receive the password
* @param bufLen The size of the buffer
*
* @return Returns the length of the password. If the length is zero,
* this will be treated as a rejected password request.
*/
typedef uint32_t (*BusAuthPwdFunc)(uint8_t* buffer, uint32_t bufLen);
/**
* Set the callback for the application to provide a password for authentication to the daemon bus
*
* @param callback The callback provided by the application
*/
AJ_EXPORT
void SetBusAuthPwdCallback(BusAuthPwdFunc callback);
/**
* Check whether we have already attempted to connect to the routing node
* specified by service.
*
* @param service The service info struct
*
* @return TRUE if blacklisted
*/
uint8_t AJ_IsRoutingNodeBlacklisted(AJ_Service* service);
void AJ_AddRoutingNodeToResponseList(AJ_Service* service);
AJ_Status AJ_SelectRoutingNodeFromResponseList(AJ_Service* service);
uint8_t AJ_GetRoutingNodeResponseListSize();
/**
* Clear the list of blacklisted routing nodes.
*/
void AJ_InitRoutingNodeBlacklist();
void AJ_InitRoutingNodeResponselist();
#ifdef __cplusplus
}
#endif
/**
* @}
*/
#endif
|