This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, api-next has been updated
via 913d9b1a83ddd6a03daa181eeb6f62fd70f506e8 (commit)
from dcb3c06f4c894c7e6eca93a56233a4dc00493ea3 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 913d9b1a83ddd6a03daa181eeb6f62fd70f506e8
Author: Petri Savolainen <petri.savolainen(a)nokia.com>
Date: Fri Dec 23 12:33:36 2016 +0200
api: ipsec: add algorithm capabilities
Added the same algorithm capabilities API that was added
to crypto API. IPSEC capabilities may be more limited than
bulk crypto, since IPSEC RFCs limit the set of valid key
lengths, etc options.
Signed-off-by: Petri Savolainen <petri.savolainen(a)nokia.com>
Reviewed-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/include/odp/api/spec/ipsec.h b/include/odp/api/spec/ipsec.h
index 86f66e6..255bb79 100644
--- a/include/odp/api/spec/ipsec.h
+++ b/include/odp/api/spec/ipsec.h
@@ -441,6 +441,46 @@ typedef struct odp_ipsec_sa_param_t {
int odp_ipsec_capability(odp_ipsec_capability_t *capa);
/**
+ * Query supported IPSEC cipher algorithm capabilities
+ *
+ * Outputs all supported configuration options for the algorithm. Output is
+ * sorted (from the smallest to the largest) first by key length, then by IV
+ * length. Use this information to select key lengths, etc cipher algorithm
+ * options for SA creation (odp_ipsec_crypto_param_t).
+ *
+ * @param cipher Cipher algorithm
+ * @param[out] capa Array of capability structures for output
+ * @param num Maximum number of capability structures to output
+ *
+ * @return Number of capability structures for the algorithm. If this is larger
+ * than 'num', only 'num' first structures were output and application
+ * may call the function again with a larger value of 'num'.
+ * @retval <0 on failure
+ */
+int odp_ipsec_cipher_capability(odp_cipher_alg_t cipher,
+ odp_crypto_cipher_capability_t capa[], int num);
+
+/**
+ * Query supported IPSEC authentication algorithm capabilities
+ *
+ * Outputs all supported configuration options for the algorithm. Output is
+ * sorted (from the smallest to the largest) first by digest length, then by key
+ * length. Use this information to select key lengths, etc authentication
+ * algorithm options for SA creation (odp_ipsec_crypto_param_t).
+ *
+ * @param auth Authentication algorithm
+ * @param[out] capa Array of capability structures for output
+ * @param num Maximum number of capability structures to output
+ *
+ * @return Number of capability structures for the algorithm. If this is larger
+ * than 'num', only 'num' first structures were output and application
+ * may call the function again with a larger value of 'num'.
+ * @retval <0 on failure
+ */
+int odp_ipsec_auth_capability(odp_auth_alg_t auth,
+ odp_crypto_auth_capability_t capa[], int num);
+
+/**
* Initialize IPSEC configuration options
*
* Initialize an odp_ipsec_config_t to its default values.
-----------------------------------------------------------------------
Summary of changes:
include/odp/api/spec/ipsec.h | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, api-next has been updated
via 3b20a21d0a45af4f78db993449052462590db22d (commit)
from f039391ec2778ff53886b1546deb9ab614521caa (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 3b20a21d0a45af4f78db993449052462590db22d
Author: Balasubramanian Manoharan <bala.manoharan(a)linaro.org>
Date: Fri Nov 4 23:04:30 2016 +0530
api: pktio: adds further definition for classification configuration
Updates classification configuration documentation.
Signed-off-by: Balasubramanian Manoharan <bala.manoharan(a)linaro.org>
Reviewed-by: Petri Savolainen <petri.savolainen(a)nokia.com>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/include/odp/api/spec/packet_io.h b/include/odp/api/spec/packet_io.h
index d46e405..2dabfcc 100644
--- a/include/odp/api/spec/packet_io.h
+++ b/include/odp/api/spec/packet_io.h
@@ -189,12 +189,11 @@ typedef struct odp_pktin_queue_param_t {
/** Number of input queues to be created
*
- * When classifier is enabled the number of queues may be zero
- * (in odp_pktin_queue_config() step), otherwise at least one
- * queue is required. More than one input queues require either flow
- * hashing or classifier enabled. The maximum value is defined by
- * pktio capability 'max_input_queues'. Queue type is defined by the
- * input mode. The default value is 1. */
+ * When classifier is enabled in odp_ipktin_queue_config() this
+ * value is ignored, otherwise at least one queue is required.
+ * More than one input queues require flow hashing configured.
+ * The maximum value is defined by pktio capability 'max_input_queues'.
+ * Queue type is defined by the input mode. The default value is 1. */
unsigned num_queues;
/** Queue parameters
@@ -202,7 +201,9 @@ typedef struct odp_pktin_queue_param_t {
* These are used for input queue creation in ODP_PKTIN_MODE_QUEUE
* or ODP_PKTIN_MODE_SCHED modes. Scheduler parameters are considered
* only in ODP_PKTIN_MODE_SCHED mode. Default values are defined in
- * odp_queue_param_t documentation. */
+ * odp_queue_param_t documentation.
+ * When classifier is enabled in odp_pktin_queue_config() this
+ * value is ignored. */
odp_queue_param_t queue_param;
} odp_pktin_queue_param_t;
@@ -887,6 +888,8 @@ int odp_pktio_mac_addr(odp_pktio_t pktio, void *mac_addr, int size);
*
* @retval 0 on success
* @retval <0 on failure
+ *
+ * @note The default_cos has to be unique per odp_pktio_t instance.
*/
int odp_pktio_default_cos_set(odp_pktio_t pktio, odp_cos_t default_cos);
-----------------------------------------------------------------------
Summary of changes:
include/odp/api/spec/packet_io.h | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, master has been updated
via 92ae191876c39a3f5d4fba63e58dd9e8c444239b (commit)
from 6104182f253161f17fd3ca5a377ed1bac62e366e (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 92ae191876c39a3f5d4fba63e58dd9e8c444239b
Author: Maxim Uvarov <maxim.uvarov(a)linaro.org>
Date: Wed Dec 21 16:38:31 2016 +0300
test: tm: queue id can be not updated
get_unique_id() function on error do not update it's second and
third arguments (unique_id and is_ipv4). gcc -O3 finds that
and traps compilation.
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
Tested-and-reviewed-by: Mike Holmes <mike.holmes(a)linaro.org>
diff --git a/test/common_plat/validation/api/traffic_mngr/traffic_mngr.c b/test/common_plat/validation/api/traffic_mngr/traffic_mngr.c
index fcc7187..0271758 100644
--- a/test/common_plat/validation/api/traffic_mngr/traffic_mngr.c
+++ b/test/common_plat/validation/api/traffic_mngr/traffic_mngr.c
@@ -944,8 +944,8 @@ static void dump_rcvd_pkts(uint32_t first_rcv_idx, uint32_t last_rcv_idx)
odp_packet_t rcv_pkt;
uint32_t rcv_idx;
int32_t xmt_idx;
- uint16_t unique_id;
- uint8_t is_ipv4;
+ uint16_t unique_id = 0;
+ uint8_t is_ipv4 = 0;
int rc;
for (rcv_idx = first_rcv_idx; rcv_idx <= last_rcv_idx; rcv_idx++) {
-----------------------------------------------------------------------
Summary of changes:
test/common_plat/validation/api/traffic_mngr/traffic_mngr.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, next has been updated
via f0eb70696dd46d7fd35e221dfc86733ae26f38ad (commit)
from f47f91e7e867fb55e5f41df66b0c4ef6fbf3a293 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit f0eb70696dd46d7fd35e221dfc86733ae26f38ad
Author: Christophe Milard <christophe.milard(a)linaro.org>
Date: Tue Dec 6 18:25:32 2016 +0100
linux-gen: _ishm: unlinking files asap for cleaner termination
_ishm now unlinks the created files as soon as possible, hence reducing
the chance to see left-overs, if ODP terminates abnormaly.
This does not provide 100% guaranty: if we are unlucky enough,
ODP may be killed between open() and unlink().
Also this method excludes exported files (flag _ODP_ISHM_EXPORT),
whose names shall be seen in the file system.
Signed-off-by: Christophe Milard <christophe.milard(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/platform/linux-generic/_ishm.c b/platform/linux-generic/_ishm.c
index a0188ad..33ef731 100644
--- a/platform/linux-generic/_ishm.c
+++ b/platform/linux-generic/_ishm.c
@@ -70,6 +70,7 @@
#include <sys/types.h>
#include <inttypes.h>
#include <sys/wait.h>
+#include <libgen.h>
/*
* Maximum number of internal shared memory blocks.
@@ -159,6 +160,7 @@ typedef struct ishm_block {
char exptname[ISHM_FILENAME_MAXLEN]; /* name of the export file */
uint32_t user_flags; /* any flags the user want to remember. */
uint32_t flags; /* block creation flags. */
+ uint32_t external_fd:1; /* block FD was externally provided */
uint64_t user_len; /* length, as requested at reserve time. */
void *start; /* only valid if _ODP_ISHM_SINGLE_VA is set*/
uint64_t len; /* length. multiple of page size. 0 if free*/
@@ -452,15 +454,17 @@ static int create_file(int block_index, huge_flag_t huge, uint64_t len,
ODP_ERR("ftruncate failed: fd=%d, err=%s.\n",
fd, strerror(errno));
close(fd);
+ unlink(filename);
return -1;
}
- strncpy(new_block->filename, filename, ISHM_FILENAME_MAXLEN - 1);
/* if _ODP_ISHM_EXPORT is set, create a description file for
* external ref:
*/
if (flags & _ODP_ISHM_EXPORT) {
+ strncpy(new_block->filename, filename,
+ ISHM_FILENAME_MAXLEN - 1);
snprintf(new_block->exptname, ISHM_FILENAME_MAXLEN,
ISHM_EXPTNAME_FORMAT,
odp_global_data.main_pid,
@@ -483,6 +487,8 @@ static int create_file(int block_index, huge_flag_t huge, uint64_t len,
}
} else {
new_block->exptname[0] = 0;
+ /* remove the file from the filesystem, keeping its fd open */
+ unlink(filename);
}
return fd;
@@ -814,6 +820,9 @@ int _odp_ishm_reserve(const char *name, uint64_t size, int fd,
return -1;
}
new_block->huge = EXTERNAL;
+ new_block->external_fd = 1;
+ } else {
+ new_block->external_fd = 0;
}
/* Otherwise, Try first huge pages when possible and needed: */
@@ -865,8 +874,9 @@ int _odp_ishm_reserve(const char *name, uint64_t size, int fd,
/* if neither huge pages or normal pages works, we cannot proceed: */
if ((fd < 0) || (addr == NULL) || (len == 0)) {
- if ((new_block->filename[0]) && (fd >= 0))
+ if ((!new_block->external_fd) && (fd >= 0))
close(fd);
+ delete_file(new_block);
odp_spinlock_unlock(&ishm_tbl->lock);
ODP_ERR("_ishm_reserve failed.\n");
return -1;
-----------------------------------------------------------------------
Summary of changes:
platform/linux-generic/_ishm.c | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
hooks/post-receive
--