summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSubash Abhinov Kasiviswanathan <subashab@codeaurora.org>2018-05-09 16:55:12 -0600
committerSubash Abhinov Kasiviswanathan <subashab@codeaurora.org>2018-05-09 16:58:19 -0600
commit6af2ed30ff15e04bec92015ad0ba1ce2eb75d27f (patch)
tree172a64b1a2367d99d57954d5f615d15e6400b7ca
parent02ee4eabb80c8621ae55d08be91777ac949680d1 (diff)
Revert "librmnetctl: kw fixes"
This reverts commit 02ee4eabb80c8621ae55d08be91777ac949680d1. This change causes only one rmnet device to be created. CRs-Fixed: 2238540 Change-Id: I5054e3e0159716f9fe98144683fde4f63ce4d54a
-rw-r--r--rmnetctl/inc/librmnetctl.h2
-rw-r--r--rmnetctl/src/librmnetctl.c51
2 files changed, 6 insertions, 47 deletions
diff --git a/rmnetctl/inc/librmnetctl.h b/rmnetctl/inc/librmnetctl.h
index 4014ac2..3d622bf 100644
--- a/rmnetctl/inc/librmnetctl.h
+++ b/rmnetctl/inc/librmnetctl.h
@@ -39,8 +39,6 @@ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef LIBRMNETCTL_H
#define LIBRMNETCTL_H
-/* RMNET API failed to copy*/
-#define RMNETCTL_LIB_COPY_FAILED -1
/* RMNET API succeeded */
#define RMNETCTL_SUCCESS 0
/* RMNET API encountered an error while executing within the library. Check the
diff --git a/rmnetctl/src/librmnetctl.c b/rmnetctl/src/librmnetctl.c
index cf237ba..731681a 100644
--- a/rmnetctl/src/librmnetctl.c
+++ b/rmnetctl/src/librmnetctl.c
@@ -92,30 +92,7 @@ struct nlmsg {
char data[500];
};
-/*
- * Helper functions
- */
-/*
- * @brief helper function to implement a secure memcpy
- * @details take source and destination buffer size into
- * considerations before copying
- * @param dst destination buffer
- * @param dst_size size of destination buffer
- * @param src source buffer
- * @param src_size size of source buffer
- * @return size of the smallest of two buffer
- */
-static inline size_t memscpy(void* dst, size_t dst_size,
- const void* src, size_t src_size)
-{
- size_t copy_size = 0;
- if( dst_size <= src_size)
- return RMNETCTL_LIB_COPY_FAILED;
- else
- memcpy(dst, src, copy_size);
- return copy_size;
-}
/*===========================================================================
LOCAL FUNCTION DEFINITIONS
@@ -1104,7 +1081,6 @@ int rtrmnet_ctl_newvnd(rmnetctl_hndl_t *hndl, char *devname, char *vndname,
char *kind = "rmnet";
struct nlmsg req;
short id;
- int ret = 0;
if (!hndl || !devname || !vndname || !error_code)
return RMNETCTL_INVALID_ARG;
@@ -1154,10 +1130,7 @@ int rtrmnet_ctl_newvnd(rmnetctl_hndl_t *hndl, char *devname, char *vndname,
NLMSG_ALIGN(req.nl_addr.nlmsg_len));
attrinfo->rta_type = IFLA_INFO_KIND;
attrinfo->rta_len = RTA_ALIGN(RTA_LENGTH(strlen(kind)));
- if(strlen(kind) < IFNAMSIZ)
- strlcpy(RTA_DATA(attrinfo), kind, sizeof(attrinfo));
- else
- return RMNETCTL_LIB_ERR;
+ memcpy(RTA_DATA(attrinfo), kind, strlen(kind));
req.nl_addr.nlmsg_len = NLMSG_ALIGN(req.nl_addr.nlmsg_len) +
RTA_ALIGN(RTA_LENGTH(strlen(kind)));
@@ -1173,9 +1146,7 @@ int rtrmnet_ctl_newvnd(rmnetctl_hndl_t *hndl, char *devname, char *vndname,
NLMSG_ALIGN(req.nl_addr.nlmsg_len));
attrinfo->rta_type = IFLA_VLAN_ID;
attrinfo->rta_len = RTA_LENGTH(sizeof(id));
- ret = memscpy(RTA_DATA(attrinfo), sizeof(req.data), &id, sizeof(id));
- if(ret == RMNETCTL_LIB_COPY_FAILED)
- return RMNETCTL_LIB_ERR;
+ memcpy(RTA_DATA(attrinfo), &id, sizeof(id));
req.nl_addr.nlmsg_len = NLMSG_ALIGN(req.nl_addr.nlmsg_len) +
RTA_ALIGN(RTA_LENGTH(sizeof(id)));
@@ -1187,9 +1158,7 @@ int rtrmnet_ctl_newvnd(rmnetctl_hndl_t *hndl, char *devname, char *vndname,
NLMSG_ALIGN(req.nl_addr.nlmsg_len));
attrinfo->rta_type = IFLA_VLAN_FLAGS;
attrinfo->rta_len = RTA_LENGTH(sizeof(flags));
- ret = memscpy(RTA_DATA(attrinfo), sizeof(req.data), &flags, sizeof(flags));
- if(ret == RMNETCTL_LIB_COPY_FAILED)
- return RMNETCTL_LIB_ERR;
+ memcpy(RTA_DATA(attrinfo), &flags, sizeof(flags));
req.nl_addr.nlmsg_len = NLMSG_ALIGN(req.nl_addr.nlmsg_len) +
RTA_ALIGN(RTA_LENGTH(sizeof(flags)));
}
@@ -1251,7 +1220,6 @@ int rtrmnet_ctl_changevnd(rmnetctl_hndl_t *hndl, char *devname, char *vndname,
int devindex = 0;
int val = 0;
short id;
- int ret = 0;
memset(&req, 0, sizeof(req));
@@ -1305,10 +1273,7 @@ int rtrmnet_ctl_changevnd(rmnetctl_hndl_t *hndl, char *devname, char *vndname,
attrinfo->rta_type = IFLA_INFO_KIND;
attrinfo->rta_len = RTA_ALIGN(RTA_LENGTH(strlen(kind)));
- if(strlen(kind) < IFNAMSIZ)
- strlcpy(RTA_DATA(attrinfo), kind, sizeof(attrinfo));
- else
- return RMNETCTL_LIB_ERR;
+ memcpy(RTA_DATA(attrinfo), kind, strlen(kind));
req.nl_addr.nlmsg_len = NLMSG_ALIGN(req.nl_addr.nlmsg_len) +
RTA_ALIGN(RTA_LENGTH(strlen(kind)));
@@ -1325,9 +1290,7 @@ int rtrmnet_ctl_changevnd(rmnetctl_hndl_t *hndl, char *devname, char *vndname,
NLMSG_ALIGN(req.nl_addr.nlmsg_len));
attrinfo->rta_type = IFLA_VLAN_ID;
attrinfo->rta_len = RTA_LENGTH(sizeof(id));
- ret = memscpy(RTA_DATA(attrinfo), sizeof(req.data), &id, sizeof(id));
- if(ret == RMNETCTL_LIB_COPY_FAILED)
- return RMNETCTL_LIB_ERR;
+ memcpy(RTA_DATA(attrinfo), &id, sizeof(id));
req.nl_addr.nlmsg_len = NLMSG_ALIGN(req.nl_addr.nlmsg_len) +
RTA_ALIGN(RTA_LENGTH(sizeof(id)));
@@ -1339,9 +1302,7 @@ int rtrmnet_ctl_changevnd(rmnetctl_hndl_t *hndl, char *devname, char *vndname,
NLMSG_ALIGN(req.nl_addr.nlmsg_len));
attrinfo->rta_type = IFLA_VLAN_FLAGS;
attrinfo->rta_len = RTA_LENGTH(sizeof(flags));
- ret = memscpy(RTA_DATA(attrinfo), sizeof(req.data), &flags, sizeof(flags));
- if(ret == RMNETCTL_LIB_COPY_FAILED)
- return RMNETCTL_LIB_ERR;
+ memcpy(RTA_DATA(attrinfo), &flags, sizeof(flags));
req.nl_addr.nlmsg_len = NLMSG_ALIGN(req.nl_addr.nlmsg_len) +
RTA_ALIGN(RTA_LENGTH(sizeof(flags)));
}