fstests: Address -Wsign-compare warnings

Most of these warnings were between int or ssize_t and size_t.
In particular, various POSIX system calls like read() and write()
return ssize_t and comparing that value with the sizeof a buffer
is a common source of these warnings. Another common source is
using an int as the iterator in a for loop with the limit being
a size_t.

With the type change, some printf() specifiers needed to change also.
This commit is contained in:
Joel Sherrill
2026-01-22 11:52:27 -06:00
parent a0df1c61e6
commit bd2055cf5a
12 changed files with 56 additions and 55 deletions
+3 -3
View File
@@ -443,7 +443,7 @@ static void test_creating_invalid_directories( void )
"%s/%s",
MOUNT_DIR,
DIRECTORY_NAMES_INVALID[index] );
rtems_test_assert( len < sizeof( dirname ) );
rtems_test_assert( len < (int) sizeof( dirname ) );
rc = mkdir( dirname, S_IRWXU | S_IRWXG | S_IRWXO );
rtems_test_assert( rc == -1 );
}
@@ -925,10 +925,10 @@ static void compare_directories(
while ( dp != NULL ) {
rc = snprintf(path[0], PATH_LENGTH, "%s/%s", dir0, dp->d_name);
rtems_test_assert( rc < PATH_LENGTH );
rtems_test_assert( rc < (int) PATH_LENGTH );
rtems_test_assert( rc >= 0 );
rc = snprintf(path[1], PATH_LENGTH, "%s/%s", dir1, dp->d_name);
rtems_test_assert( rc < PATH_LENGTH );
rtems_test_assert( rc < (int) PATH_LENGTH );
rtems_test_assert( rc >= 0 );
rc = stat( path[0] , &stat_buf[0] );
+7 -7
View File
@@ -290,13 +290,13 @@ static void test_permission01(void )
fd=open(file01,O_WRONLY);
rtems_test_assert(fd >= 0);
n=write(fd,test_data,len);
rtems_test_assert(n==len);
rtems_test_assert(n==(int)len);
status=close(fd);
rtems_test_assert(status==0);
fd=open(file02,O_WRONLY);
n=write(fd,test_data,len);
rtems_test_assert(n==len);
rtems_test_assert(n==(int)len);
status=close(fd);
rtems_test_assert(status==0);
@@ -307,7 +307,7 @@ static void test_permission01(void )
fd=open(file01,O_RDWR);
rtems_test_assert(fd >= 0);
n=read(fd,data_buf,len);
rtems_test_assert(n==len);
rtems_test_assert(n==(int)len);
status=close(fd);
rtems_test_assert(status==0);
@@ -344,7 +344,7 @@ static void test_permission01(void )
fd=open(file01,O_WRONLY);
rtems_test_assert(fd >= 0);
n=write(fd,test_data,len);
rtems_test_assert(n==len);
rtems_test_assert(n==(int)len);
status=close(fd);
rtems_test_assert(status==0);
@@ -558,14 +558,14 @@ static void rename_search_permission_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir01, name01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
fd = creat (path01, mode);
rtems_test_assert (fd >= 0);
status = close (fd);
rtems_test_assert (status == 0);
rv = snprintf (path02, sizeof(path02), "%s/%s", dir01, name02);
rtems_test_assert (rv < sizeof(path02));
rtems_test_assert (rv < (int) sizeof(path02));
fd = creat (path02, mode);
rtems_test_assert (fd >= 0);
status = close (fd);
@@ -583,7 +583,7 @@ static void rename_search_permission_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir01, name01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_EQUAL (0, unlink, path01);
EXPECT_EQUAL (0, unlink, path02);
EXPECT_EQUAL (0, rmdir, dir01);
+1 -1
View File
@@ -238,7 +238,7 @@ truncate_test03 (void)
char data;
int n;
int i;
size_t i;
char *readbuf;
off_t good_size = 100;
+4 -4
View File
@@ -91,7 +91,7 @@ static void rename_opened_file_test (void)
fd1 = open (name01, O_RDWR | O_CREAT, mode);
rtems_test_assert (fd1 >= 0);
result = write (fd1, message, strlen (message));
rtems_test_assert (result == strlen (message));
rtems_test_assert (result == (int) strlen (message));
EXPECT_EQUAL (0, rename, name01, name02);
@@ -148,7 +148,7 @@ static void directory_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir02, name02);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
fd = creat (path01, mode);
rtems_test_assert (fd >= 0);
status = close (fd);
@@ -246,7 +246,7 @@ static void arg_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s/%s", dir01, name01, name02);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_ERROR (ENOENT, rename, path01, name01);
/*
@@ -329,7 +329,7 @@ static void filesystem_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", BASE_FOR_TEST, name02);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_ERROR (EXDEV, rename, name01, path01);
EXPECT_EQUAL (-1, unlink, path01);
+2 -2
View File
@@ -260,7 +260,7 @@ static void directory_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir02, dir01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
status = mkdir (path01, mode);
rtems_test_assert (status == 0);
@@ -462,4 +462,4 @@ void test (void)
same_file_test ();
directory_test ();
arg_format_test ();
}
}
+3 -3
View File
@@ -91,7 +91,7 @@ void test (void)
for(i = statbuf.st_nlink; i < LINK_MAX_val; i++)
{
rv = snprintf (link_name, sizeof(link_name), "%s/%d", dir01, i);
rtems_test_assert (rv < sizeof(link_name));
rtems_test_assert (rv < (int) sizeof(link_name));
status = mkdir (link_name, mode);
rtems_test_assert (status == 0);
@@ -101,7 +101,7 @@ void test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir01, dir01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_ERROR (EMLINK, rename, dir02, path01);
/*
@@ -111,7 +111,7 @@ void test (void)
for(i = statbuf.st_nlink; i < LINK_MAX_val; i++)
{
rv = snprintf (link_name, sizeof(link_name), "%s/%d", dir01, i);
rtems_test_assert (rv < sizeof(link_name));
rtems_test_assert (rv < (int) sizeof(link_name));
status = rmdir (link_name);
rtems_test_assert (status == 0);
+10 -10
View File
@@ -127,7 +127,7 @@ static void rename_write_permission_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "../%s/%s", dir01, name02);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_ERROR (EACCES, rename, name01, path01);
/*
@@ -144,16 +144,16 @@ static void rename_write_permission_test (void)
EXPECT_EQUAL (0, unlink, name01);
rv = snprintf (path01, sizeof(path01), "../%s", dir01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
status = chmod (path01, mode);
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "../%s/%s", dir01, name01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_EQUAL (0, unlink, path01);
rv = snprintf (path01, sizeof(path01), "../%s/%s", dir01, name02);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_EQUAL (0, unlink, path01);
status = chdir ("..");
@@ -218,14 +218,14 @@ static void rename_search_permission_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir01, name01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
fd = creat (path01, mode);
rtems_test_assert (fd >= 0);
status = close (fd);
rtems_test_assert (status == 0);
rv = snprintf (path02, sizeof(path02), "%s/%s", dir01, name02);
rtems_test_assert (rv < sizeof(path02));
rtems_test_assert (rv < (int) sizeof(path02));
fd = creat (path02, mode);
rtems_test_assert (fd >= 0);
status = close (fd);
@@ -249,7 +249,7 @@ static void rename_search_permission_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir02, name01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_ERROR (EACCES, rename, path01, path02);
/*
@@ -269,7 +269,7 @@ static void rename_search_permission_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir01, name01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_EQUAL (0, unlink, path01);
EXPECT_EQUAL (0, unlink, path02);
EXPECT_EQUAL (0, rmdir, dir01);
@@ -326,7 +326,7 @@ static void rename_permission03 (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir01, name01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
fd = creat (path01, mode);
rtems_test_assert (fd >= 0);
status = close (fd);
@@ -370,7 +370,7 @@ static void rename_permission03 (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir01, name01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
fd = creat (path01, mode);
rtems_test_assert (fd >= 0);
status = close (fd);
+8 -7
View File
@@ -97,7 +97,7 @@ rtems_rfs_bitmap_ut_alloc_seq_test (rtems_rfs_bitmap_control* control,
size_t size)
{
bool state;
int i;
size_t i;
int rc;
printf (" %2d. Set all bits\n", test);
@@ -124,7 +124,8 @@ rtems_rfs_bitmap_ut_alloc_seq_test (rtems_rfs_bitmap_control* control,
}
if (state)
{
printf (" %2d. Cleared bit still set: bit = %" PRId32 "\n", test, bit + i);
printf (" %2d. Cleared bit still set: bit = %zu\n", test, bit + i);
return false;
}
}
@@ -239,7 +240,7 @@ rtems_rfs_bitmap_ut_test_bitmap (size_t size)
rtems_rfs_exit_on_error (rc, !result, &control, buffer.buffer);
rc = rtems_rfs_bitmap_map_alloc (&control, size - 1, &result, &bit);
result = result && (bit == (size - 1));
result = result && ((size_t) bit == (size - 1));
printf (" 4. Find bit (size - 1) with seed = (size - 1) (%zu): %s (%s): bit = %" PRId32 "\n",
size - 1, result ? "pass" : "FAIL", strerror (rc), bit);
rtems_rfs_exit_on_error (rc, !result, &control, buffer.buffer);
@@ -309,7 +310,7 @@ rtems_rfs_bitmap_ut_test_bitmap (size_t size)
rtems_rfs_exit_on_error (rc, false, &control, buffer.buffer);
rc = rtems_rfs_bitmap_map_alloc (&control, 0, &result, &bit);
result = result && (bit == (size - 1));
result = result && ((size_t) bit == (size - 1));
printf (" 15. Find bit with seed = 0: %s (%s): bit = %" PRId32 "\n",
result ? "pass" : "FAIL", strerror (rc), bit);
rtems_rfs_exit_on_error (rc, !result, &control, buffer.buffer);
@@ -330,7 +331,7 @@ rtems_rfs_bitmap_ut_test_bitmap (size_t size)
rtems_rfs_exit_on_error (rc, false, &control, buffer.buffer);
rc = rtems_rfs_bitmap_map_alloc (&control, size / 2, &result, &bit);
result = result && (bit == (size - 1));
result = result && ((size_t) bit == (size - 1));
printf (" 19. Find bit with seed = (size / 2) (%zu): %s (%s): bit = %" PRId32 "\n",
size / 2, result ? "pass" : "FAIL", strerror (rc), bit);
rtems_rfs_exit_on_error (rc, !result, &control, buffer.buffer);
@@ -350,7 +351,7 @@ rtems_rfs_bitmap_ut_test_bitmap (size_t size)
size - 1, rc == 0 ? "pass" : "FAIL", strerror (rc));
rc = rtems_rfs_bitmap_map_alloc (&control, (size / 2) - 1, &result, &bit);
result = result && (bit == (size - 1));
result = result && ((size_t) bit == (size - 1));
printf (" 23. Find bit with seed = ((size / 2) - 1) (%zu): %s (%s): bit = %" PRId32 "\n",
(size / 2) - 1, result ? "pass" : "FAIL", strerror (rc), bit);
rtems_rfs_exit_on_error (rc, !result, &control, buffer.buffer);
@@ -391,7 +392,7 @@ rtems_rfs_bitmap_ut_test_bitmap (size_t size)
first_bit, last_bit, rc == 0 ? "PASS" : "FAIL", strerror (rc));
clear = rtems_rfs_bitmap_map_free (&control);
result = clear == (last_bit - first_bit);
result = clear == (size_t) (last_bit - first_bit);
printf (" 27. Check free count is %zu: %" PRId32 ": %s (%s)\n",
clear, last_bit - first_bit,
result ? "pass" : "FAIL", strerror (rc));
+7 -7
View File
@@ -61,7 +61,7 @@ static void symlink_test01(void )
int status;
struct stat statbuf;
size_t len=strlen(file01);
size_t name_len;
ssize_t name_len;
printf("Create a file named %s\n",file01);
@@ -86,7 +86,7 @@ static void symlink_test01(void )
puts("call readlink ");
name_len=readlink(symlink_file01,name,sizeof(name)-1);
rtems_test_assert(name_len!=-1);
rtems_test_assert(name_len != -1);
name[name_len]='\0';
rtems_test_assert(!strncmp(name,file01,name_len));
puts(name);
@@ -298,11 +298,11 @@ static void symlink_rename_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/test", symlink01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_ERROR (ELOOP, rename, path01, name01);
rv = snprintf (path01, sizeof(path01), "%s/test", symlink02);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_ERROR (ELOOP, rename, path01, name01);
/*
@@ -331,11 +331,11 @@ static void symlink_rename_test (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/test", symlink01);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_ERROR (ELOOP, rename, name01, path01);
rv = snprintf (path01, sizeof(path01), "%s/test", symlink02);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
EXPECT_ERROR (ELOOP, rename, name01, path01);
/*
@@ -402,7 +402,7 @@ static void symlink_rename_self (void)
rtems_test_assert (status == 0);
rv = snprintf (path01, sizeof(path01), "%s/%s", dir01, name02);
rtems_test_assert (rv < sizeof(path01));
rtems_test_assert (rv < (int) sizeof(path01));
status = link (name01, path01);
rtems_test_assert (status == 0);
+6 -6
View File
@@ -345,7 +345,7 @@ static int read_tftp_file(
if ( *fd >= 0 ) {
data_buffer = malloc( buffer_size );
while ( bytes > 0 && max_bytes >= bytes ) {
while ( bytes > 0 && (ssize_t) max_bytes >= bytes ) {
errno = 0;
bytes = read(
*fd,
@@ -491,7 +491,7 @@ static int write_tftp_file(
);
break;
}
} while( bytes_total < file_size );
} while( (size_t) bytes_total < file_size );
free( data_buffer );
} /* if */
@@ -635,8 +635,8 @@ static int rdwt_tftp_client_file(
/* Write file */
do { /* Try also to write files with 0 bytes size */
bytes = ( file_size - bytes_total >= buffer_size ) ?
buffer_size : file_size - bytes_total;
bytes = ( (size_t) (file_size - bytes_total) >= buffer_size ) ?
buffer_size : (size_t) (file_size - bytes_total);
for ( i = 0; i < bytes; ++i ) {
data_buffer[i] = get_file_content( bytes_total + i );
}
@@ -5315,7 +5315,7 @@ T_TEST_CASE_FIXTURE( read_file_windowsize_trouble, &fixture_small_opt_size )
tftpfs_ipv4_loopback,
true
);
for ( i = 0; i < RTEMS_ARRAY_SIZE( pkg_sequence ); ++i ) {
for ( i = 0; i < (int) RTEMS_ARRAY_SIZE( pkg_sequence ); ++i ) {
if ( pkg_sequence[i] == 0 ) {
block_num = pkg_sequence[i];
_Tftp_Add_interaction_recv_nothing(
@@ -5892,7 +5892,7 @@ T_TEST_CASE_FIXTURE( write_file_windowsize_trouble, &fixture_small_opt_size )
sizeof( options ),
true
);
for ( i = 0; i < RTEMS_ARRAY_SIZE( pkg_sequence ); ++i ) {
for ( i = 0; i < (int) RTEMS_ARRAY_SIZE( pkg_sequence ); ++i ) {
if ( pkg_sequence[i] == 0 ) {
_Tftp_Add_interaction_recv_nothing(
TFTP_FIRST_FD,
@@ -321,7 +321,7 @@ static bool interact_sendto_common( Tftp_Action *act, void *data )
return false;
}
act->data.sendto.result = d->result ? act->data.sendto.len : -1;
act->data.sendto.result = d->result ? (int) act->data.sendto.len : -1;
return true;
}
@@ -710,7 +710,7 @@ static bool interact_recvfrom_common(
act->data.recvfrom.src_addr_str[
sizeof( act->data.recvfrom.src_addr_str ) - 1] = '\0';
act->data.recvfrom.src_port = d->src_port;
act->data.recvfrom.result = d->result ? actual_size : -1;
act->data.recvfrom.result = d->result ? (int) actual_size : -1;
return true;
}
@@ -221,7 +221,7 @@ static void log_hex_dump( const void *buf, size_t len )
char hex[2 * per_line + 4];
char chars[per_line + 1];
char *hexpos;
int i;
size_t i;
chars[per_line] = '\0';
do {
@@ -750,7 +750,7 @@ struct hostent *gethostbyname( const char *name )
};
struct hostent *result = NULL;
uint8_t *ipv4_addr;
int i;
size_t i;
for ( i = 0; i < RTEMS_ARRAY_SIZE( hosts ); ++i ) {
if ( strcmp( hosts[i].h_name, name ) == 0 ) {
@@ -897,7 +897,7 @@ int setsockopt(
sockfd,
( level == SOL_SOCKET ) ? "SOL_SOCKET" : "UNKONWN",
( optname == SO_RCVTIMEO ) ? "SO_RCVTIMEO" : "UNKONWN",
( i < MAX_SOCKET_FD ) ? control->receive_timeout_ms[i] : -1,
( i < MAX_SOCKET_FD ) ? (int) control->receive_timeout_ms[i] : -1,
result
);