From: Reshma Pattan <reshma.pattan@intel.com>
To: dev@dpdk.org
Cc: Reshma Pattan <reshma.pattan@intel.com>
Subject: [PATCH v5 1/5] pdump: fix default socket path
Date: Fri, 24 Jun 2016 17:36:19 +0100 [thread overview]
Message-ID: <1466786183-3772-2-git-send-email-reshma.pattan@intel.com> (raw)
In-Reply-To: <1466786183-3772-1-git-send-email-reshma.pattan@intel.com>
SOCKET_PATH_HOME is to specify environment variable "HOME",
so it should not contain "/pdump_sockets" in the macro.
So removed "/pdump_sockets" from SOCKET_PATH_HOME and
SOCKET_PATH_VAR_RUN. New changes will create pdump sockets under
/var/run/.dpdk/pdump_sockets for root users and
under HOME/.dpdk/pdump_sockets for non root users.
Changes are done in pdump_get_socket_path() to accommodate
new socket path changes.
Fixes: 278f945402c5 ("pdump: add new library for packet capture")
Signed-off-by: Reshma Pattan <reshma.pattan@intel.com>
---
lib/librte_pdump/rte_pdump.c | 29 ++++++++++++++++++++---------
1 file changed, 20 insertions(+), 9 deletions(-)
diff --git a/lib/librte_pdump/rte_pdump.c b/lib/librte_pdump/rte_pdump.c
index c921f51..70efd96 100644
--- a/lib/librte_pdump/rte_pdump.c
+++ b/lib/librte_pdump/rte_pdump.c
@@ -50,8 +50,10 @@
#include "rte_pdump.h"
-#define SOCKET_PATH_VAR_RUN "/var/run/pdump_sockets"
-#define SOCKET_PATH_HOME "HOME/pdump_sockets"
+#define SOCKET_PATH_VAR_RUN "/var/run"
+#define SOCKET_PATH_HOME "HOME"
+#define DPDK_DIR "/.dpdk"
+#define SOCKET_DIR "/pdump_sockets"
#define SERVER_SOCKET "%s/pdump_server_socket"
#define CLIENT_SOCKET "%s/pdump_client_socket_%d_%u"
#define DEVICE_ID_SIZE 64
@@ -444,17 +446,26 @@ set_pdump_rxtx_cbs(struct pdump_request *p)
static void
pdump_get_socket_path(char *buffer, int bufsz, enum rte_pdump_socktype type)
{
- const char *dir = NULL;
+ char dpdk_dir[PATH_MAX] = {0};
+ char dir[PATH_MAX] = {0};
+ char *dir_home = NULL;
if (type == RTE_PDUMP_SOCKET_SERVER && server_socket_dir[0] != 0)
- dir = server_socket_dir;
+ snprintf(dir, sizeof(dir), "%s", server_socket_dir);
else if (type == RTE_PDUMP_SOCKET_CLIENT && client_socket_dir[0] != 0)
- dir = client_socket_dir;
+ snprintf(dir, sizeof(dir), "%s", client_socket_dir);
else {
- if (getuid() != 0)
- dir = getenv(SOCKET_PATH_HOME);
- else
- dir = SOCKET_PATH_VAR_RUN;
+ if (getuid() != 0) {
+ dir_home = getenv(SOCKET_PATH_HOME);
+ snprintf(dpdk_dir, sizeof(dpdk_dir), "%s%s",
+ dir_home, DPDK_DIR);
+ } else
+ snprintf(dpdk_dir, sizeof(dpdk_dir), "%s%s",
+ SOCKET_PATH_VAR_RUN, DPDK_DIR);
+
+ mkdir(dpdk_dir, 700);
+ snprintf(dir, sizeof(dir), "%s%s",
+ dpdk_dir, SOCKET_DIR);
}
mkdir(dir, 700);
--
2.5.0
next prev parent reply other threads:[~2016-06-24 16:36 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-21 15:18 [PATCH 0/3] fix coverity issues in packet capture framework Reshma Pattan
2016-06-21 15:18 ` [PATCH 1/3] pdump: check getenv return value Reshma Pattan
2016-06-21 16:55 ` Ferruh Yigit
2016-06-22 8:01 ` Pattan, Reshma
2016-06-21 15:18 ` [PATCH 2/3] pdump: fix string overflow Reshma Pattan
2016-06-21 17:14 ` Ferruh Yigit
2016-06-21 15:18 ` [PATCH 3/3] app/pdump: " Reshma Pattan
2016-06-21 17:21 ` Ferruh Yigit
2016-06-22 6:46 ` Anupam Kapoor
2016-06-22 9:21 ` Bruce Richardson
2016-06-22 9:24 ` Pattan, Reshma
2016-06-22 14:07 ` [PATCH v2 0/3] fix coverity issues in packet capture framework Reshma Pattan
2016-06-22 14:07 ` [PATCH v2 1/3] pdump: check getenv return value Reshma Pattan
2016-06-22 14:07 ` [PATCH v2 2/3] pdump: fix string overflow Reshma Pattan
2016-06-22 14:07 ` [PATCH v2 3/3] app/pdump: " Reshma Pattan
2016-06-23 14:36 ` [PATCH v3 0/4] fix issues in packet capture framework Reshma Pattan
2016-06-23 14:36 ` [PATCH v3 1/4] pdump: fix default socket path Reshma Pattan
2016-06-23 14:36 ` [PATCH v3 2/4] pdump: check getenv return value Reshma Pattan
2016-06-23 14:36 ` [PATCH v3 3/4] pdump: fix string overflow Reshma Pattan
2016-06-23 14:36 ` [PATCH v3 4/4] app/pdump: " Reshma Pattan
2016-06-24 13:54 ` [PATCH v4 0/5] fix issues in packet capture framework Reshma Pattan
2016-06-24 13:54 ` [PATCH v4 1/5] pdump: fix default socket path Reshma Pattan
2016-06-24 14:54 ` Thomas Monjalon
2016-06-24 15:05 ` Pattan, Reshma
2016-06-24 16:39 ` Pattan, Reshma
2016-06-24 13:54 ` [PATCH v4 2/5] pdump: check getenv return value Reshma Pattan
2016-06-24 13:54 ` [PATCH v4 3/5] pdump: fix string overflow Reshma Pattan
2016-06-24 13:54 ` [PATCH v4 4/5] app/pdump: " Reshma Pattan
2016-06-24 13:54 ` [PATCH v4 5/5] app/pdump: fix type casting of ring size Reshma Pattan
2016-06-24 16:36 ` [PATCH v5 0/5] fix issues in packet capture framework Reshma Pattan
2016-06-24 16:36 ` Reshma Pattan [this message]
2016-06-24 22:50 ` [PATCH v5 1/5] pdump: fix default socket path Mcnamara, John
2016-06-24 16:36 ` [PATCH v5 2/5] pdump: check getenv return value Reshma Pattan
2016-06-24 22:50 ` Mcnamara, John
2016-06-24 16:36 ` [PATCH v5 3/5] pdump: fix string overflow Reshma Pattan
2016-06-24 22:51 ` Mcnamara, John
2016-06-24 16:36 ` [PATCH v5 4/5] app/pdump: " Reshma Pattan
2016-06-24 22:51 ` Mcnamara, John
2016-06-24 16:36 ` [PATCH v5 5/5] app/pdump: fix type casting of ring size Reshma Pattan
2016-06-24 22:51 ` Mcnamara, John
2016-06-27 14:50 ` [PATCH v5 0/5] fix issues in packet capture framework Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1466786183-3772-2-git-send-email-reshma.pattan@intel.com \
--to=reshma.pattan@intel.com \
--cc=dev@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.