libqrtr: Remove depricated functions

Post-QMI clean up of old interfaces and some duplicated definitions.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
This commit is contained in:
Bjorn Andersson
2018-02-01 02:06:57 +00:00
parent 183d33d238
commit dbffdd0193
3 changed files with 13 additions and 96 deletions

View File

@@ -36,20 +36,6 @@ struct qrtr_packet {
struct qrtr_packet pkt = { .data = pkt ##_buf, \
.data_len = sizeof(pkt ##_buf), }
/**
* qmi_header - wireformat header of QMI messages
* @type: type of message
* @txn_id: transaction id
* @msg_id: message id
* @msg_len: length of message payload following header
*/
struct qmi_header {
uint8_t type;
uint16_t txn_id;
uint16_t msg_id;
uint16_t msg_len;
} __attribute__((packed));
#define QMI_REQUEST 0
#define QMI_RESPONSE 2
#define QMI_INDICATION 4
@@ -124,15 +110,6 @@ struct qmi_response_type_v01 {
extern struct qmi_elem_info qmi_response_type_v01_ei[];
struct qrtr_ind_ops {
int (*bye)(uint32_t node, void *data);
int (*del_client)(uint32_t node, uint32_t port, void *data);
int (*new_server)(uint32_t service, uint16_t version, uint16_t instance,
uint32_t node, uint32_t port, void *data);
int (*del_server)(uint32_t service, uint16_t version, uint16_t instance,
uint32_t node, uint32_t port, void *data);
};
int qrtr_open(int rport);
void qrtr_close(int sock);
@@ -150,15 +127,6 @@ int qrtr_new_lookup(int sock, uint32_t service, uint16_t version, uint16_t insta
int qrtr_remove_lookup(int sock, uint32_t service, uint16_t version, uint16_t instance);
int qrtr_poll(int sock, unsigned int ms);
int qrtr_lookup(int sock, uint32_t service, uint16_t version, uint16_t instance, uint32_t ifilter,
void (* cb)(void *,uint32_t,uint32_t,uint32_t,uint32_t), void *udata);
int qrtr_is_ctrl_addr(struct sockaddr_qrtr *sq);
int qrtr_handle_ctrl_msg(struct sockaddr_qrtr *sq,
const void *buf,
size_t len,
struct qrtr_ind_ops *ops,
void *data);
int qrtr_decode(struct qrtr_packet *dest, void *buf, size_t len,
const struct sockaddr_qrtr *sq);

View File

@@ -36,13 +36,20 @@
#include "libqrtr.h"
struct qmi_packet {
uint8_t flags;
/**
* qmi_header - wireformat header of QMI messages
* @type: type of message
* @txn_id: transaction id
* @msg_id: message id
* @msg_len: length of message payload following header
*/
struct qmi_header {
uint8_t type;
uint16_t txn_id;
uint16_t msg_id;
uint16_t msg_len;
uint8_t data[];
} __attribute__((__packed__));
} __attribute__((packed));
#define QMI_ENCDEC_ENCODE_TLV(type, length, p_dst) do { \
*p_dst++ = type; \
@@ -787,9 +794,9 @@ ssize_t qmi_encode_message(struct qrtr_packet *pkt, int type, int msg_id,
int qmi_decode_header(struct qrtr_packet *pkt, unsigned int *msg_id)
{
struct qmi_packet *qmi = pkt->data;
struct qmi_header *qmi = pkt->data;
if (qmi->msg_len != pkt->data_len - sizeof(struct qmi_packet)) {
if (qmi->msg_len != pkt->data_len - sizeof(*qmi)) {
fprintf(stderr, "[RMTFS] Invalid length of incoming qmi request\n");
return -EINVAL;
}

View File

@@ -219,64 +219,6 @@ int qrtr_recvfrom(int sock, void *buf, unsigned int bsz, uint32_t *node, uint32_
return rc;
}
int qrtr_is_ctrl_addr(struct sockaddr_qrtr *sq)
{
return sq->sq_port == QRTR_PORT_CTRL;
}
int qrtr_handle_ctrl_msg(struct sockaddr_qrtr *sq,
const void *buf,
size_t len,
struct qrtr_ind_ops *ops,
void *data)
{
const struct qrtr_ctrl_pkt *pkt = buf;
uint16_t instance;
uint32_t service;
uint16_t version;
uint32_t node;
uint32_t port;
int cmd;
if (len < sizeof(__le32))
return -EINVAL;
cmd = le32_to_cpu(pkt->cmd);
if (cmd == QRTR_TYPE_BYE && ops->bye) {
return ops->bye(sq->sq_node, data);
} else if (cmd == QRTR_TYPE_DEL_CLIENT && ops->del_client) {
if (len < 3 * sizeof(__le32))
return -EINVAL;
return ops->del_client(pkt->client.node, pkt->client.port, data);
} else if (cmd == QRTR_TYPE_NEW_SERVER && ops->new_server) {
if (len < 5 * sizeof(__le32))
return -EINVAL;
node = le32_to_cpu(pkt->server.node);
port = le32_to_cpu(pkt->server.port);
service = le32_to_cpu(pkt->server.service);
version = le32_to_cpu(pkt->server.instance) & 0xffff;
instance = le32_to_cpu(pkt->server.instance) >> 16;
return ops->new_server(service, version, instance, node, port, data);
} else if (cmd == QRTR_TYPE_DEL_SERVER && ops->del_server) {
if (len < 5 * sizeof(__le32))
return -EINVAL;
node = le32_to_cpu(pkt->server.node);
port = le32_to_cpu(pkt->server.port);
service = le32_to_cpu(pkt->server.service);
version = le32_to_cpu(pkt->server.instance) & 0xffff;
instance = le32_to_cpu(pkt->server.instance) >> 16;
return ops->del_server(service, version, instance, node, port, data);
}
return 0;
}
int qrtr_decode(struct qrtr_packet *dest, void *buf, size_t len,
const struct sockaddr_qrtr *sq)
{