generic/60[78]: ensure the initial DAX file flag state before test
[xfstests-dev.git] / dmapi / src / suite1 / cmd / respond_event.c
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (c) 2000-2001 Silicon Graphics, Inc.
4  * All Rights Reserved.
5  */
6
7 #include <lib/hsm.h>
8
9 #include <string.h>
10
11 /*---------------------------------------------------------------------------
12
13 Test program used to test the DMAPI function dm_respond_event().  The
14 command line is:
15
16         respond_event sid token response reterror
17
18 where sid is the session ID whose event you are responding to.
19
20 ----------------------------------------------------------------------------*/
21
22 #ifndef linux
23 extern  char    *sys_errlist[];
24 #endif
25 extern  int     optind;
26 extern  char    *optarg;
27
28
29 char    *Progname;
30
31 static void
32 usage(void)
33 {
34         fprintf(stderr, "usage:\t%s sid token response reterror\n",
35                 Progname);
36         fprintf(stderr, "  Response values:\n");
37         fprintf(stderr, "  %d = DM_RESP_INVALID\n", DM_RESP_INVALID);
38         fprintf(stderr, "  %d = DM_RESP_CONTINUE\n", DM_RESP_CONTINUE );
39         fprintf(stderr, "  %d = DM_RESP_ABORT\n", DM_RESP_ABORT);
40         fprintf(stderr, "  %d = DM_RESP_DONTCARE\n", DM_RESP_DONTCARE);
41         exit(1);
42 }
43
44
45 int
46 main(
47         int             argc, 
48         char            **argv)
49 {
50         dm_sessid_t     sid;
51         char            *name;
52         dm_token_t      token;
53         dm_response_t   response;
54         int             reterror;
55
56         Progname = strrchr(argv[0], '/');
57         if (Progname) {
58                 Progname++;
59         } else {
60                 Progname = argv[0];
61         }
62
63         if (argc != 5)
64                 usage();
65
66         sid = atol(argv[1]);
67         token = atol(argv[2]);
68         response = (dm_response_t)atoi(argv[3]);
69         reterror = atol(argv[4]);
70
71         if (dm_init_service(&name) == -1)  {
72                 fprintf(stderr, "Can't initialize the DMAPI\n");
73                 exit(1);
74         }
75
76         if (dm_respond_event(sid, token, response, reterror, 0, NULL)) {
77                 fprintf(stderr, "dm_respond_event failed, %d/%s\n",
78                         errno, strerror(errno));
79                 exit(1);
80         }
81         exit(0);
82 }