diff options
Diffstat (limited to 'meta-openembedded/meta-networking/recipes-protocols/freediameter/files/pass-ptest-env.patch')
-rw-r--r-- | meta-openembedded/meta-networking/recipes-protocols/freediameter/files/pass-ptest-env.patch | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/meta-openembedded/meta-networking/recipes-protocols/freediameter/files/pass-ptest-env.patch b/meta-openembedded/meta-networking/recipes-protocols/freediameter/files/pass-ptest-env.patch new file mode 100644 index 000000000..ea857af7d --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-protocols/freediameter/files/pass-ptest-env.patch @@ -0,0 +1,72 @@ +freediameter ptest cases testmesg_stress.c and testloadext.c need load +extensions both build time and runtime. Then they search extensions with +build directory that causes runtime failures. + +Pass an environment variable to define runtime extension path. + +Upstream-Status: Inappropriate [OE ptest specific] + +Signed-off-by: Kai Kang <kai.kang@windriver.com> +Signed-off-by: Jackie Huang <jackie.huang@windriver.com> + +diff -Nur freeDiameter-1.2.0.orig/tests/testloadext.c freeDiameter-1.2.0/tests/testloadext.c +--- freeDiameter-1.2.0.orig/tests/testloadext.c 2014-02-19 17:33:24.785405032 +0800 ++++ freeDiameter-1.2.0/tests/testloadext.c 2014-02-19 20:08:03.871403924 +0800 +@@ -49,7 +49,7 @@ + { + DIR *dir; + struct dirent *dp; +- char fullname[512]; ++ char fullname[1024]; + int pathlen; + + /* First, initialize the daemon modules */ +@@ -57,11 +57,16 @@ + CHECK( 0, fd_queues_init() ); + CHECK( 0, fd_msg_init() ); + CHECK( 0, fd_rtdisp_init() ); +- ++ ++ char *ext_dir = getenv("EXTENSIONS_DIR"); ++ if (ext_dir) ++ pathlen = snprintf(fullname, sizeof(fullname), "%s", ext_dir); ++ else ++ pathlen = snprintf(fullname, sizeof(fullname), BUILD_DIR "/extensions/"); ++ + /* Find all extensions which have been compiled along the test */ +- TRACE_DEBUG(INFO, "Loading from: '%s'", BUILD_DIR "/extensions"); +- CHECK( 0, (dir = opendir (BUILD_DIR "/extensions")) == NULL ? 1 : 0 ); +- pathlen = snprintf(fullname, sizeof(fullname), BUILD_DIR "/extensions/"); ++ TRACE_DEBUG(INFO, "Loading from: '%s'", fullname); ++ CHECK( 0, (dir = opendir (fullname)) == NULL ? 1 : 0 ); + + while ((dp = readdir (dir)) != NULL) { + char * dot = strrchr(dp->d_name, '.'); +diff -Nur freeDiameter-1.2.0.orig/tests/testmesg_stress.c freeDiameter-1.2.0/tests/testmesg_stress.c +--- freeDiameter-1.2.0.orig/tests/testmesg_stress.c 2014-02-19 17:33:24.785405032 +0800 ++++ freeDiameter-1.2.0/tests/testmesg_stress.c 2014-02-19 20:08:03.928403924 +0800 +@@ -67,15 +67,20 @@ + { + DIR *dir; + struct dirent *dp; +- char fullname[512]; ++ char fullname[1024]; + int pathlen; + struct fd_list all_extensions = FD_LIST_INITIALIZER(all_extensions); + struct fd_list ext_with_depends = FD_LIST_INITIALIZER(ext_with_depends); + ++ char *ext_dir = getenv("EXTENSIONS_DIR"); ++ if (ext_dir) ++ pathlen = snprintf(fullname, sizeof(fullname), "%s", ext_dir); ++ else ++ pathlen = snprintf(fullname, sizeof(fullname), BUILD_DIR "/extensions/"); ++ + /* Find all extensions which have been compiled along the test */ +- LOG_D("Loading %s*.fdx from: '%s'", BUILD_DIR "/extensions", prefix ?: ""); +- CHECK( 0, (dir = opendir (BUILD_DIR "/extensions")) == NULL ? 1 : 0 ); +- pathlen = snprintf(fullname, sizeof(fullname), BUILD_DIR "/extensions/"); ++ TRACE_DEBUG(INFO, "Loading from: '%s'", fullname); ++ CHECK( 0, (dir = opendir (fullname)) == NULL ? 1 : 0 ); + + while ((dp = readdir (dir)) != NULL) { + char * dot = strrchr(dp->d_name, '.'); |