Automatically convert tests to use TAIL_ALLOC_OBJECT_CONST_PTR macro with the following sed expression: sed -ri \ 's/^([[:space:]]*)(([^*]+[[:alnum:]_])( \*)?) *\*( *const )?([^ =]+) = tail_alloc\(sizeof\((\2|\*\6)\)\);/\1TAIL_ALLOC_OBJECT_CONST_PTR(\2, \6);/' \ tests/*.c
45 lines
917 B
C
45 lines
917 B
C
#include "tests.h"
|
|
#include <asm/unistd.h>
|
|
|
|
#ifdef __NR_uname
|
|
|
|
# include <stdio.h>
|
|
# include <sys/utsname.h>
|
|
# include <unistd.h>
|
|
|
|
int main(int ac, char **av)
|
|
{
|
|
int abbrev = ac > 1;
|
|
TAIL_ALLOC_OBJECT_CONST_PTR(struct utsname, uname);
|
|
int rc = syscall(__NR_uname, uname);
|
|
printf("uname({sysname=\"");
|
|
print_quoted_string(uname->sysname);
|
|
printf("\", nodename=\"");
|
|
print_quoted_string(uname->nodename);
|
|
if (abbrev) {
|
|
printf("\", ...");
|
|
} else {
|
|
printf("\", release=\"");
|
|
print_quoted_string(uname->release);
|
|
printf("\", version=\"");
|
|
print_quoted_string(uname->version);
|
|
printf("\", machine=\"");
|
|
print_quoted_string(uname->machine);
|
|
# ifdef HAVE_STRUCT_UTSNAME_DOMAINNAME
|
|
printf("\", domainname=\"");
|
|
print_quoted_string(uname->domainname);
|
|
# endif
|
|
printf("\"");
|
|
}
|
|
printf("}) = %d\n", rc);
|
|
|
|
puts("+++ exited with 0 +++");
|
|
return 0;
|
|
}
|
|
|
|
#else
|
|
|
|
SKIP_MAIN_UNDEFINED("__NR_uname")
|
|
|
|
#endif
|