test: Add testcase for #1111
Refs: #1111 Change-Id: Ifdf25a9ce98ef495200daf1c24d7ac2c81b3ef17
This commit is contained in:
committed by
Masamichi Takagi
parent
04e54ead5d
commit
c6cc0bf07a
50
test/issues/1111/CT_001.c
Normal file
50
test/issues/1111/CT_001.c
Normal file
@ -0,0 +1,50 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <signal.h>
|
||||
#include "./test_chk.h"
|
||||
|
||||
#define TEST_NAME "CT_001"
|
||||
|
||||
int handled_cnt;
|
||||
|
||||
void test_handler(int sig)
|
||||
{
|
||||
handled_cnt++;
|
||||
}
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
int rc = 0;
|
||||
int status;
|
||||
int tmp_flag = 0;
|
||||
struct sigaction sa, old_act;
|
||||
|
||||
printf("*** %s start *******************************\n", TEST_NAME);
|
||||
handled_cnt = 0;
|
||||
|
||||
sa.sa_handler = test_handler;
|
||||
sa.sa_flags = SA_RESETHAND;
|
||||
|
||||
rc = sigaction(SIGUSR1, &sa, NULL);
|
||||
OKNG(rc != 0, "sigaction with SA_RESETHAND");
|
||||
|
||||
rc = sigaction(SIGUSR1, NULL, &old_act);
|
||||
OKNG(rc != 0, "sigaction to get current action");
|
||||
|
||||
if (old_act.sa_handler == test_handler &&
|
||||
old_act.sa_flags & SA_RESETHAND) {
|
||||
tmp_flag = 1;
|
||||
}
|
||||
OKNG(tmp_flag != 1, "check current act");
|
||||
|
||||
printf("*** %s PASSED\n\n", TEST_NAME);
|
||||
|
||||
return 0;
|
||||
|
||||
fn_fail:
|
||||
printf("*** %s FAILED\n\n", TEST_NAME);
|
||||
|
||||
return -1;
|
||||
}
|
||||
Reference in New Issue
Block a user