summaryrefslogtreecommitdiffstats
path: root/testsuites/libtests
diff options
context:
space:
mode:
Diffstat (limited to 'testsuites/libtests')
-rw-r--r--testsuites/libtests/ftp01/ftp01.scn4
-rw-r--r--testsuites/libtests/ftp01/init.c26
-rw-r--r--testsuites/libtests/stackchk/init.c6
-rw-r--r--testsuites/libtests/stackchk/system.h6
4 files changed, 36 insertions, 6 deletions
diff --git a/testsuites/libtests/ftp01/ftp01.scn b/testsuites/libtests/ftp01/ftp01.scn
index a3292961c8..a27da4b698 100644
--- a/testsuites/libtests/ftp01/ftp01.scn
+++ b/testsuites/libtests/ftp01/ftp01.scn
@@ -17,6 +17,8 @@ USER anonymous
230 User logged in.
TYPE I
200 Type set to I.
+SIZE a.txt
+213 1102
PASV
227 Entering passive mode (127,0,0,1,4,4).
RETR a.txt
@@ -41,6 +43,8 @@ USER anonymous
230 User logged in.
TYPE I
200 Type set to I.
+SIZE b.txt
+213 1102
PASV
227 Entering passive mode (127,0,0,1,4,10).
RETR b.txt
diff --git a/testsuites/libtests/ftp01/init.c b/testsuites/libtests/ftp01/init.c
index 354c0f045a..369aebe92a 100644
--- a/testsuites/libtests/ftp01/init.c
+++ b/testsuites/libtests/ftp01/init.c
@@ -104,7 +104,7 @@ static void change_self_priority(void)
rtems_test_assert(sc == RTEMS_SUCCESSFUL);
}
-static void create_file(const char *path)
+static void create_file(const char *path, const void *begin, size_t size)
{
int rv = 0;
int fd = open(path, O_WRONLY);
@@ -112,8 +112,8 @@ static void create_file(const char *path)
rtems_test_assert(fd >= 0);
- n = write(fd, &content [0], sizeof(content));
- rtems_test_assert(n == (ssize_t) sizeof(content));
+ n = write(fd, begin, size);
+ rtems_test_assert(n == (ssize_t) size);
rv = close(fd);
rtems_test_assert(rv == 0);
@@ -126,15 +126,33 @@ static void copy_file(const char *src_path, const char *dest_path)
int out = open(dest_path, O_WRONLY);
ssize_t n_in = 0;
char buf [64];
+ struct stat st_in;
+ struct stat st_out;
+
+ memset(&st_in, 0xff, sizeof(st_in));
+ memset(&st_out, 0xff, sizeof(st_out));
rtems_test_assert(in >= 0);
rtems_test_assert(out >= 0);
+ rv = fstat(out, &st_out);
+ rtems_test_assert(rv == 0);
+
+ rtems_test_assert(st_out.st_size == 0);
+
while ((n_in = read(in, buf, sizeof(buf))) > 0) {
ssize_t n_out = write(out, buf, (size_t) n_in);
rtems_test_assert(n_out == n_in);
}
+ rv = fstat(out, &st_out);
+ rtems_test_assert(rv == 0);
+
+ rv = fstat(in, &st_in);
+ rtems_test_assert(rv == 0);
+
+ rtems_test_assert(st_in.st_size == st_out.st_size);
+
rv = close(out);
rtems_test_assert(rv == 0);
@@ -189,7 +207,7 @@ static void test(void)
initialize_ftpfs();
change_self_priority();
- create_file(file_a);
+ create_file(file_a, &content [0], sizeof(content));
copy_file(file_a, file_b);
check_file(file_b);
check_file_size(file_a, sizeof(content));
diff --git a/testsuites/libtests/stackchk/init.c b/testsuites/libtests/stackchk/init.c
index 1551eecb37..772b039592 100644
--- a/testsuites/libtests/stackchk/init.c
+++ b/testsuites/libtests/stackchk/init.c
@@ -86,7 +86,11 @@ rtems_task Init(
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}
-void Fatal_extension( uint32_t source, bool is_internal, uint32_t error )
+void Fatal_extension(
+ rtems_fatal_source source,
+ bool is_internal,
+ rtems_fatal_code error
+)
{
if ( source != RTEMS_FATAL_SOURCE_STACK_CHECKER ) {
printk( "unexpected fatal source\n" );
diff --git a/testsuites/libtests/stackchk/system.h b/testsuites/libtests/stackchk/system.h
index 95babb8a0c..16b623ae2d 100644
--- a/testsuites/libtests/stackchk/system.h
+++ b/testsuites/libtests/stackchk/system.h
@@ -41,7 +41,11 @@ void blow_stack( void );
#define CONFIGURE_STACK_CHECKER_ENABLED
-void Fatal_extension( uint32_t source, bool is_internal, uint32_t error );
+void Fatal_extension(
+ rtems_fatal_source source,
+ bool is_internal,
+ rtems_fatal_code error
+);
#define CONFIGURE_INITIAL_EXTENSIONS \
{ NULL, NULL, NULL, NULL, NULL, NULL, NULL, Fatal_extension }