root/daemons/controld/controld_matrix.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2  * Copyright 2004-2020 the Pacemaker project contributors
   3  *
   4  * The version control history for this file may have further details.
   5  *
   6  * This source code is licensed under the GNU Lesser General Public License
   7  * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
   8  */
   9 
  10 #ifndef XML_FSA_MATRIX__H
  11 #  define XML_FSA_MATRIX__H
  12 
  13 /*
  14  *      The state transition table.  The rows are inputs, and
  15  *      the columns are states.
  16  */
  17 const enum crmd_fsa_state crmd_fsa_state[MAXINPUT][MAXSTATE] = {
  18 /* Got an I_NULL */
  19     {
  20      /* S_IDLE               ==> */ S_IDLE,
  21      /* S_ELECTION           ==> */ S_ELECTION,
  22      /* S_INTEGRATION        ==> */ S_INTEGRATION,
  23      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
  24      /* S_NOT_DC             ==> */ S_NOT_DC,
  25      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
  26      /* S_RECOVERY           ==> */ S_RECOVERY,
  27      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
  28      /* S_STARTING           ==> */ S_STARTING,
  29      /* S_PENDING            ==> */ S_PENDING,
  30      /* S_STOPPING           ==> */ S_STOPPING,
  31      /* S_TERMINATE          ==> */ S_TERMINATE,
  32      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
  33      /* S_HALT               ==> */ S_HALT,
  34      },
  35 
  36 /* Got an I_CIB_OP */
  37     {
  38      /* S_IDLE               ==> */ S_IDLE,
  39      /* S_ELECTION           ==> */ S_ELECTION,
  40      /* S_INTEGRATION        ==> */ S_INTEGRATION,
  41      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
  42      /* S_NOT_DC             ==> */ S_NOT_DC,
  43      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
  44      /* S_RECOVERY           ==> */ S_RECOVERY,
  45      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
  46      /* S_STARTING           ==> */ S_STARTING,
  47      /* S_PENDING            ==> */ S_PENDING,
  48      /* S_STOPPING           ==> */ S_STOPPING,
  49      /* S_TERMINATE          ==> */ S_TERMINATE,
  50      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
  51      /* S_HALT               ==> */ S_HALT,
  52      },
  53 
  54 /* Got an I_CIB_UPDATE */
  55     {
  56      /* S_IDLE               ==> */ S_IDLE,
  57      /* S_ELECTION           ==> */ S_ELECTION,
  58      /* S_INTEGRATION        ==> */ S_INTEGRATION,
  59      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
  60      /* S_NOT_DC             ==> */ S_RECOVERY,
  61      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
  62      /* S_RECOVERY           ==> */ S_RECOVERY,
  63      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
  64      /* S_STARTING           ==> */ S_RECOVERY,
  65      /* S_PENDING            ==> */ S_RECOVERY,
  66      /* S_STOPPING           ==> */ S_STOPPING,
  67      /* S_TERMINATE          ==> */ S_TERMINATE,
  68      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
  69      /* S_HALT               ==> */ S_HALT,
  70      },
  71 
  72 /* Got an I_DC_TIMEOUT */
  73     {
  74      /* S_IDLE               ==> */ S_RECOVERY,
  75      /* S_ELECTION           ==> */ S_ELECTION,
  76      /* S_INTEGRATION        ==> */ S_RECOVERY,
  77      /* S_FINALIZE_JOIN      ==> */ S_RECOVERY,
  78      /* S_NOT_DC             ==> */ S_ELECTION,
  79      /* S_POLICY_ENGINE      ==> */ S_RECOVERY,
  80      /* S_RECOVERY           ==> */ S_RECOVERY,
  81      /* S_RELEASE_DC         ==> */ S_RECOVERY,
  82      /* S_STARTING           ==> */ S_STARTING,
  83      /* S_PENDING            ==> */ S_ELECTION,
  84      /* S_STOPPING           ==> */ S_STOPPING,
  85      /* S_TERMINATE          ==> */ S_TERMINATE,
  86      /* S_TRANSITION_ENGINE  ==> */ S_RECOVERY,
  87      /* S_HALT               ==> */ S_ELECTION,
  88      },
  89 
  90 /* Got an I_ELECTION */
  91     {
  92      /* S_IDLE               ==> */ S_ELECTION,
  93      /* S_ELECTION           ==> */ S_ELECTION,
  94      /* S_INTEGRATION        ==> */ S_ELECTION,
  95      /* S_FINALIZE_JOIN      ==> */ S_ELECTION,
  96      /* S_NOT_DC             ==> */ S_ELECTION,
  97      /* S_POLICY_ENGINE      ==> */ S_ELECTION,
  98      /* S_RECOVERY           ==> */ S_RECOVERY,
  99      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 100      /* S_STARTING           ==> */ S_STARTING,
 101      /* S_PENDING            ==> */ S_ELECTION,
 102      /* S_STOPPING           ==> */ S_STOPPING,
 103      /* S_TERMINATE          ==> */ S_TERMINATE,
 104      /* S_TRANSITION_ENGINE  ==> */ S_ELECTION,
 105      /* S_HALT               ==> */ S_HALT,
 106      },
 107 
 108 /* Got an I_PE_CALC */
 109     {
 110      /* S_IDLE               ==> */ S_POLICY_ENGINE,
 111      /* S_ELECTION           ==> */ S_ELECTION,
 112      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 113      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 114      /* S_NOT_DC             ==> */ S_NOT_DC,
 115      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 116      /* S_RECOVERY           ==> */ S_RECOVERY,
 117      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 118      /* S_STARTING           ==> */ S_RECOVERY,
 119      /* S_PENDING            ==> */ S_PENDING,
 120      /* S_STOPPING           ==> */ S_STOPPING,
 121      /* S_TERMINATE          ==> */ S_TERMINATE,
 122      /* S_TRANSITION_ENGINE  ==> */ S_POLICY_ENGINE,
 123      /* S_HALT               ==> */ S_HALT,
 124      },
 125 
 126 /* Got an I_RELEASE_DC */
 127     {
 128      /* S_IDLE               ==> */ S_RELEASE_DC,
 129      /* S_ELECTION           ==> */ S_RELEASE_DC,
 130      /* S_INTEGRATION        ==> */ S_RELEASE_DC,
 131      /* S_FINALIZE_JOIN      ==> */ S_RELEASE_DC,
 132      /* S_NOT_DC             ==> */ S_NOT_DC,
 133      /* S_POLICY_ENGINE      ==> */ S_RELEASE_DC,
 134      /* S_RECOVERY           ==> */ S_RECOVERY,
 135      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 136      /* S_STARTING           ==> */ S_RECOVERY,
 137      /* S_PENDING            ==> */ S_PENDING,
 138      /* S_STOPPING           ==> */ S_STOPPING,
 139      /* S_TERMINATE          ==> */ S_TERMINATE,
 140      /* S_TRANSITION_ENGINE  ==> */ S_RELEASE_DC,
 141      /* S_HALT               ==> */ S_HALT,
 142      },
 143 
 144 /* Got an I_ELECTION_DC */
 145     {
 146      /* S_IDLE               ==> */ S_INTEGRATION,
 147      /* S_ELECTION           ==> */ S_INTEGRATION,
 148      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 149      /* S_FINALIZE_JOIN      ==> */ S_INTEGRATION,
 150      /* S_NOT_DC             ==> */ S_INTEGRATION,
 151      /* S_POLICY_ENGINE      ==> */ S_INTEGRATION,
 152      /* S_RECOVERY           ==> */ S_RECOVERY,
 153      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 154      /* S_STARTING           ==> */ S_RECOVERY,
 155      /* S_PENDING            ==> */ S_PENDING,
 156      /* S_STOPPING           ==> */ S_STOPPING,
 157      /* S_TERMINATE          ==> */ S_TERMINATE,
 158      /* S_TRANSITION_ENGINE  ==> */ S_INTEGRATION,
 159      /* S_HALT               ==> */ S_HALT,
 160      },
 161 
 162 /* Got an I_ERROR */
 163     {
 164      /* S_IDLE               ==> */ S_RECOVERY,
 165      /* S_ELECTION           ==> */ S_RECOVERY,
 166      /* S_INTEGRATION        ==> */ S_RECOVERY,
 167      /* S_FINALIZE_JOIN      ==> */ S_RECOVERY,
 168      /* S_NOT_DC             ==> */ S_RECOVERY,
 169      /* S_POLICY_ENGINE      ==> */ S_RECOVERY,
 170      /* S_RECOVERY           ==> */ S_RECOVERY,
 171      /* S_RELEASE_DC         ==> */ S_RECOVERY,
 172      /* S_STARTING           ==> */ S_RECOVERY,
 173      /* S_PENDING            ==> */ S_RECOVERY,
 174      /* S_STOPPING           ==> */ S_TERMINATE,
 175      /* S_TERMINATE          ==> */ S_TERMINATE,
 176      /* S_TRANSITION_ENGINE  ==> */ S_RECOVERY,
 177      /* S_HALT               ==> */ S_RECOVERY,
 178      },
 179 
 180 /* Got an I_FAIL */
 181     {
 182      /* S_IDLE               ==> */ S_RECOVERY,
 183      /* S_ELECTION           ==> */ S_RELEASE_DC,
 184      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 185      /* S_FINALIZE_JOIN      ==> */ S_INTEGRATION,
 186      /* S_NOT_DC             ==> */ S_RECOVERY,
 187      /* S_POLICY_ENGINE      ==> */ S_INTEGRATION,
 188      /* S_RECOVERY           ==> */ S_RECOVERY,
 189      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 190      /* S_STARTING           ==> */ S_STOPPING,
 191      /* S_PENDING            ==> */ S_STOPPING,
 192      /* S_STOPPING           ==> */ S_STOPPING,
 193      /* S_TERMINATE          ==> */ S_TERMINATE,
 194      /* S_TRANSITION_ENGINE  ==> */ S_POLICY_ENGINE,
 195      /* S_HALT               ==> */ S_RELEASE_DC,
 196      },
 197 
 198 /* Got an I_INTEGRATED */
 199     {
 200      /* S_IDLE               ==> */ S_IDLE,
 201      /* S_ELECTION           ==> */ S_ELECTION,
 202      /* S_INTEGRATION        ==> */ S_FINALIZE_JOIN,
 203      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 204      /* S_NOT_DC             ==> */ S_NOT_DC,
 205      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 206      /* S_RECOVERY           ==> */ S_RECOVERY,
 207      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 208      /* S_STARTING           ==> */ S_RECOVERY,
 209      /* S_PENDING            ==> */ S_RECOVERY,
 210      /* S_STOPPING           ==> */ S_STOPPING,
 211      /* S_TERMINATE          ==> */ S_TERMINATE,
 212      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
 213      /* S_HALT               ==> */ S_HALT,
 214      },
 215 
 216 /* Got an I_FINALIZED */
 217     {
 218      /* S_IDLE               ==> */ S_IDLE,
 219      /* S_ELECTION           ==> */ S_ELECTION,
 220      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 221      /* S_FINALIZE_JOIN      ==> */ S_POLICY_ENGINE,
 222      /* S_NOT_DC             ==> */ S_NOT_DC,
 223      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 224      /* S_RECOVERY           ==> */ S_RECOVERY,
 225      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 226      /* S_STARTING           ==> */ S_RECOVERY,
 227      /* S_PENDING            ==> */ S_RECOVERY,
 228      /* S_STOPPING           ==> */ S_STOPPING,
 229      /* S_TERMINATE          ==> */ S_TERMINATE,
 230      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
 231      /* S_HALT               ==> */ S_HALT,
 232      },
 233 
 234 /* Got an I_NODE_JOIN */
 235     {
 236      /* S_IDLE               ==> */ S_INTEGRATION,
 237      /* S_ELECTION           ==> */ S_ELECTION,
 238      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 239      /* S_FINALIZE_JOIN      ==> */ S_INTEGRATION,
 240      /* S_NOT_DC             ==> */ S_NOT_DC,
 241      /* S_POLICY_ENGINE      ==> */ S_INTEGRATION,
 242      /* S_RECOVERY           ==> */ S_RECOVERY,
 243      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 244      /* S_STARTING           ==> */ S_RECOVERY,
 245      /* S_PENDING            ==> */ S_PENDING,
 246      /* S_STOPPING           ==> */ S_STOPPING,
 247      /* S_TERMINATE          ==> */ S_TERMINATE,
 248      /* S_TRANSITION_ENGINE  ==> */ S_INTEGRATION,
 249      /* S_HALT               ==> */ S_HALT,
 250      },
 251 
 252 /* Got an I_NOT_DC */
 253     {
 254      /* S_IDLE               ==> */ S_RECOVERY,
 255      /* S_ELECTION           ==> */ S_ELECTION,
 256      /* S_INTEGRATION        ==> */ S_RECOVERY,
 257      /* S_FINALIZE_JOIN      ==> */ S_RECOVERY,
 258      /* S_NOT_DC             ==> */ S_NOT_DC,
 259      /* S_POLICY_ENGINE      ==> */ S_RECOVERY,
 260      /* S_RECOVERY           ==> */ S_RECOVERY,
 261      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 262      /* S_STARTING           ==> */ S_RECOVERY,
 263      /* S_PENDING            ==> */ S_NOT_DC,
 264      /* S_STOPPING           ==> */ S_STOPPING,
 265      /* S_TERMINATE          ==> */ S_TERMINATE,
 266      /* S_TRANSITION_ENGINE  ==> */ S_RECOVERY,
 267      /* S_HALT               ==> */ S_HALT,
 268      },
 269 
 270 /* Got an I_RECOVERED */
 271     {
 272      /* S_IDLE               ==> */ S_IDLE,
 273      /* S_ELECTION           ==> */ S_ELECTION,
 274      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 275      /* S_FINALIZE_JOIN      ==> */ S_INTEGRATION,
 276      /* S_NOT_DC             ==> */ S_NOT_DC,
 277      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 278      /* S_RECOVERY           ==> */ S_PENDING,
 279      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 280      /* S_STARTING           ==> */ S_STARTING,
 281      /* S_PENDING            ==> */ S_PENDING,
 282      /* S_STOPPING           ==> */ S_STOPPING,
 283      /* S_TERMINATE          ==> */ S_TERMINATE,
 284      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
 285      /* S_HALT               ==> */ S_HALT,
 286      },
 287 
 288 /* Got an I_RELEASE_FAIL */
 289     {
 290      /* S_IDLE               ==> */ S_STOPPING,
 291      /* S_ELECTION           ==> */ S_STOPPING,
 292      /* S_INTEGRATION        ==> */ S_STOPPING,
 293      /* S_FINALIZE_JOIN      ==> */ S_STOPPING,
 294      /* S_NOT_DC             ==> */ S_NOT_DC,
 295      /* S_POLICY_ENGINE      ==> */ S_STOPPING,
 296      /* S_RECOVERY           ==> */ S_STOPPING,
 297      /* S_RELEASE_DC         ==> */ S_STOPPING,
 298      /* S_STARTING           ==> */ S_RECOVERY,
 299      /* S_PENDING            ==> */ S_PENDING,
 300      /* S_STOPPING           ==> */ S_STOPPING,
 301      /* S_TERMINATE          ==> */ S_TERMINATE,
 302      /* S_TRANSITION_ENGINE  ==> */ S_STOPPING,
 303      /* S_HALT               ==> */ S_HALT,
 304      },
 305 
 306 /* Got an I_RELEASE_SUCCESS */
 307     {
 308      /* S_IDLE               ==> */ S_RECOVERY,
 309      /* S_ELECTION           ==> */ S_ELECTION,
 310      /* S_INTEGRATION        ==> */ S_RECOVERY,
 311      /* S_FINALIZE_JOIN      ==> */ S_RECOVERY,
 312      /* S_NOT_DC             ==> */ S_NOT_DC,
 313      /* S_POLICY_ENGINE      ==> */ S_RECOVERY,
 314      /* S_RECOVERY           ==> */ S_RECOVERY,
 315      /* S_RELEASE_DC         ==> */ S_PENDING,
 316      /* S_STARTING           ==> */ S_RECOVERY,
 317      /* S_PENDING            ==> */ S_PENDING,
 318      /* S_STOPPING           ==> */ S_STOPPING,
 319      /* S_TERMINATE          ==> */ S_TERMINATE,
 320      /* S_TRANSITION_ENGINE  ==> */ S_RECOVERY,
 321      /* S_HALT               ==> */ S_HALT,
 322      },
 323 
 324 /* Got an I_RESTART */
 325     {
 326      /* S_IDLE               ==> */ S_IDLE,
 327      /* S_ELECTION           ==> */ S_ELECTION,
 328      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 329      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 330      /* S_NOT_DC             ==> */ S_NOT_DC,
 331      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 332      /* S_RECOVERY           ==> */ S_RECOVERY,
 333      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 334      /* S_STARTING           ==> */ S_STARTING,
 335      /* S_PENDING            ==> */ S_PENDING,
 336      /* S_STOPPING           ==> */ S_STOPPING,
 337      /* S_TERMINATE          ==> */ S_TERMINATE,
 338      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
 339      /* S_HALT               ==> */ S_HALT,
 340      },
 341 
 342 /* Got an I_TE_SUCCESS */
 343     {
 344      /* S_IDLE               ==> */ S_IDLE,
 345      /* S_ELECTION           ==> */ S_ELECTION,
 346      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 347      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 348      /* S_NOT_DC             ==> */ S_NOT_DC,
 349      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 350      /* S_RECOVERY           ==> */ S_RECOVERY,
 351      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 352      /* S_STARTING           ==> */ S_RECOVERY,
 353      /* S_PENDING            ==> */ S_PENDING,
 354      /* S_STOPPING           ==> */ S_STOPPING,
 355      /* S_TERMINATE          ==> */ S_TERMINATE,
 356      /* S_TRANSITION_ENGINE  ==> */ S_IDLE,
 357      /* S_HALT               ==> */ S_HALT,
 358      },
 359 
 360 /* Got an I_ROUTER */
 361     {
 362      /* S_IDLE               ==> */ S_IDLE,
 363      /* S_ELECTION           ==> */ S_ELECTION,
 364      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 365      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 366      /* S_NOT_DC             ==> */ S_NOT_DC,
 367      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 368      /* S_RECOVERY           ==> */ S_RECOVERY,
 369      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 370      /* S_STARTING           ==> */ S_STARTING,
 371      /* S_PENDING            ==> */ S_PENDING,
 372      /* S_STOPPING           ==> */ S_STOPPING,
 373      /* S_TERMINATE          ==> */ S_TERMINATE,
 374      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
 375      /* S_HALT               ==> */ S_HALT,
 376      },
 377 
 378 /* Got an I_SHUTDOWN */
 379     {
 380      /* S_IDLE               ==> */ S_POLICY_ENGINE,
 381      /* S_ELECTION           ==> */ S_ELECTION,
 382      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 383      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 384      /* S_NOT_DC             ==> */ S_NOT_DC,
 385      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 386      /* S_RECOVERY           ==> */ S_STOPPING,
 387      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 388      /* S_STARTING           ==> */ S_STOPPING,
 389      /* S_PENDING            ==> */ S_PENDING,
 390      /* S_STOPPING           ==> */ S_STOPPING,
 391      /* S_TERMINATE          ==> */ S_TERMINATE,
 392      /* S_TRANSITION_ENGINE  ==> */ S_POLICY_ENGINE,
 393      /* S_HALT               ==> */ S_ELECTION,
 394      },
 395 
 396 /* Got an I_STOP */
 397     {
 398      /* S_IDLE               ==> */ S_STOPPING,
 399      /* S_ELECTION           ==> */ S_STOPPING,
 400      /* S_INTEGRATION        ==> */ S_STOPPING,
 401      /* S_FINALIZE_JOIN      ==> */ S_STOPPING,
 402      /* S_NOT_DC             ==> */ S_STOPPING,
 403      /* S_POLICY_ENGINE      ==> */ S_STOPPING,
 404      /* S_RECOVERY           ==> */ S_STOPPING,
 405      /* S_RELEASE_DC         ==> */ S_STOPPING,
 406      /* S_STARTING           ==> */ S_STOPPING,
 407      /* S_PENDING            ==> */ S_STOPPING,
 408      /* S_STOPPING           ==> */ S_STOPPING,
 409      /* S_TERMINATE          ==> */ S_TERMINATE,
 410      /* S_TRANSITION_ENGINE  ==> */ S_STOPPING,
 411      /* S_HALT               ==> */ S_STOPPING,
 412      },
 413 
 414 /* Got an I_TERMINATE */
 415     {
 416      /* S_IDLE               ==> */ S_TERMINATE,
 417      /* S_ELECTION           ==> */ S_TERMINATE,
 418      /* S_INTEGRATION        ==> */ S_TERMINATE,
 419      /* S_FINALIZE_JOIN      ==> */ S_TERMINATE,
 420      /* S_NOT_DC             ==> */ S_TERMINATE,
 421      /* S_POLICY_ENGINE      ==> */ S_TERMINATE,
 422      /* S_RECOVERY           ==> */ S_TERMINATE,
 423      /* S_RELEASE_DC         ==> */ S_TERMINATE,
 424      /* S_STARTING           ==> */ S_TERMINATE,
 425      /* S_PENDING            ==> */ S_TERMINATE,
 426      /* S_STOPPING           ==> */ S_TERMINATE,
 427      /* S_TERMINATE          ==> */ S_TERMINATE,
 428      /* S_TRANSITION_ENGINE  ==> */ S_TERMINATE,
 429      /* S_HALT               ==> */ S_TERMINATE,
 430      },
 431 
 432 /* Got an I_STARTUP */
 433     {
 434      /* S_IDLE               ==> */ S_RECOVERY,
 435      /* S_ELECTION           ==> */ S_RECOVERY,
 436      /* S_INTEGRATION        ==> */ S_RECOVERY,
 437      /* S_FINALIZE_JOIN      ==> */ S_RECOVERY,
 438      /* S_NOT_DC             ==> */ S_RECOVERY,
 439      /* S_POLICY_ENGINE      ==> */ S_RECOVERY,
 440      /* S_RECOVERY           ==> */ S_RECOVERY,
 441      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 442      /* S_STARTING           ==> */ S_STARTING,
 443      /* S_PENDING            ==> */ S_PENDING,
 444      /* S_STOPPING           ==> */ S_STOPPING,
 445      /* S_TERMINATE          ==> */ S_TERMINATE,
 446      /* S_TRANSITION_ENGINE  ==> */ S_RECOVERY,
 447      /* S_HALT               ==> */ S_HALT,
 448      },
 449 
 450 /* Got an I_PE_SUCCESS */
 451     {
 452      /* S_IDLE               ==> */ S_IDLE,
 453      /* S_ELECTION           ==> */ S_ELECTION,
 454      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 455      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 456      /* S_NOT_DC             ==> */ S_NOT_DC,
 457      /* S_POLICY_ENGINE      ==> */ S_TRANSITION_ENGINE,
 458      /* S_RECOVERY           ==> */ S_RECOVERY,
 459      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 460      /* S_STARTING           ==> */ S_RECOVERY,
 461      /* S_PENDING            ==> */ S_PENDING,
 462      /* S_STOPPING           ==> */ S_STOPPING,
 463      /* S_TERMINATE          ==> */ S_TERMINATE,
 464      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
 465      /* S_HALT               ==> */ S_HALT,
 466      },
 467 
 468 /* Got an I_JOIN_OFFER */
 469     {
 470      /* S_IDLE               ==> */ S_IDLE,
 471      /* S_ELECTION           ==> */ S_ELECTION,
 472      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 473      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 474      /* S_NOT_DC             ==> */ S_PENDING,
 475      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 476      /* S_RECOVERY           ==> */ S_RECOVERY,
 477      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 478      /* S_STARTING           ==> */ S_STARTING,
 479      /* S_PENDING            ==> */ S_PENDING,
 480      /* S_STOPPING           ==> */ S_STOPPING,
 481      /* S_TERMINATE          ==> */ S_TERMINATE,
 482      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
 483      /* S_HALT               ==> */ S_HALT,
 484      },
 485 
 486 /* Got an I_JOIN_REQUEST */
 487     {
 488      /* S_IDLE               ==> */ S_INTEGRATION,
 489      /* S_ELECTION           ==> */ S_ELECTION,
 490      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 491      /* S_FINALIZE_JOIN      ==> */ S_INTEGRATION,
 492      /* S_NOT_DC             ==> */ S_NOT_DC,
 493      /* S_POLICY_ENGINE      ==> */ S_INTEGRATION,
 494      /* S_RECOVERY           ==> */ S_RECOVERY,
 495      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 496      /* S_STARTING           ==> */ S_STARTING,
 497      /* S_PENDING            ==> */ S_PENDING,
 498      /* S_STOPPING           ==> */ S_STOPPING,
 499      /* S_TERMINATE          ==> */ S_TERMINATE,
 500      /* S_TRANSITION_ENGINE  ==> */ S_INTEGRATION,
 501      /* S_HALT               ==> */ S_HALT,
 502      },
 503 
 504 /* Got an I_JOIN_RESULT */
 505     {
 506      /* S_IDLE               ==> */ S_INTEGRATION,
 507      /* S_ELECTION           ==> */ S_ELECTION,
 508      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 509      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 510      /* S_NOT_DC             ==> */ S_PENDING,
 511      /* S_POLICY_ENGINE      ==> */ S_INTEGRATION,
 512      /* S_RECOVERY           ==> */ S_RECOVERY,
 513      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 514      /* S_STARTING           ==> */ S_RECOVERY,
 515      /* S_PENDING            ==> */ S_PENDING,
 516      /* S_STOPPING           ==> */ S_STOPPING,
 517      /* S_TERMINATE          ==> */ S_TERMINATE,
 518      /* S_TRANSITION_ENGINE  ==> */ S_INTEGRATION,
 519      /* S_HALT               ==> */ S_HALT,
 520      },
 521 
 522 /* Got an I_WAIT_FOR_EVENT */
 523     {
 524      /* S_IDLE               ==> */ S_IDLE,
 525      /* S_ELECTION           ==> */ S_ELECTION,
 526      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 527      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 528      /* S_NOT_DC             ==> */ S_NOT_DC,
 529      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 530      /* S_RECOVERY           ==> */ S_RECOVERY,
 531      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 532      /* S_STARTING           ==> */ S_STARTING,
 533      /* S_PENDING            ==> */ S_PENDING,
 534      /* S_STOPPING           ==> */ S_STOPPING,
 535      /* S_TERMINATE          ==> */ S_TERMINATE,
 536      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
 537      /* S_HALT               ==> */ S_HALT,
 538      },
 539 
 540 /* Got an I_DC_HEARTBEAT */
 541     {
 542      /* S_IDLE               ==> */ S_IDLE,
 543      /* S_ELECTION           ==> */ S_ELECTION,
 544      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 545      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 546      /* S_NOT_DC             ==> */ S_NOT_DC,
 547      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 548      /* S_RECOVERY           ==> */ S_RECOVERY,
 549      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 550      /* S_STARTING           ==> */ S_STARTING,
 551      /* S_PENDING            ==> */ S_PENDING,
 552      /* S_STOPPING           ==> */ S_STOPPING,
 553      /* S_TERMINATE          ==> */ S_TERMINATE,
 554      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
 555      /* S_HALT               ==> */ S_HALT,
 556      },
 557 
 558 /* Got an I_LRM_EVENT */
 559     {
 560      /* S_IDLE               ==> */ S_IDLE,
 561      /* S_ELECTION           ==> */ S_ELECTION,
 562      /* S_INTEGRATION        ==> */ S_INTEGRATION,
 563      /* S_FINALIZE_JOIN      ==> */ S_FINALIZE_JOIN,
 564      /* S_NOT_DC             ==> */ S_NOT_DC,
 565      /* S_POLICY_ENGINE      ==> */ S_POLICY_ENGINE,
 566      /* S_RECOVERY           ==> */ S_RECOVERY,
 567      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 568      /* S_STARTING           ==> */ S_STARTING,
 569      /* S_PENDING            ==> */ S_PENDING,
 570      /* S_STOPPING           ==> */ S_STOPPING,
 571      /* S_TERMINATE          ==> */ S_TERMINATE,
 572      /* S_TRANSITION_ENGINE  ==> */ S_TRANSITION_ENGINE,
 573      /* S_HALT               ==> */ S_HALT,
 574      },
 575 
 576 /* Got an I_PENDING */
 577     {
 578      /* S_IDLE               ==> */ S_PENDING,
 579      /* S_ELECTION           ==> */ S_PENDING,
 580      /* S_INTEGRATION        ==> */ S_PENDING,
 581      /* S_FINALIZE_JOIN      ==> */ S_PENDING,
 582      /* S_NOT_DC             ==> */ S_PENDING,
 583      /* S_POLICY_ENGINE      ==> */ S_PENDING,
 584      /* S_RECOVERY           ==> */ S_RECOVERY,
 585      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 586      /* S_STARTING           ==> */ S_PENDING,
 587      /* S_PENDING            ==> */ S_PENDING,
 588      /* S_STOPPING           ==> */ S_STOPPING,
 589      /* S_TERMINATE          ==> */ S_TERMINATE,
 590      /* S_TRANSITION_ENGINE  ==> */ S_PENDING,
 591      /* S_HALT               ==> */ S_HALT,
 592      },
 593 
 594 /* Got an I_HALT */
 595     {
 596      /* S_IDLE               ==> */ S_HALT,
 597      /* S_ELECTION           ==> */ S_HALT,
 598      /* S_INTEGRATION        ==> */ S_HALT,
 599      /* S_FINALIZE_JOIN      ==> */ S_HALT,
 600      /* S_NOT_DC             ==> */ S_HALT,
 601      /* S_POLICY_ENGINE      ==> */ S_HALT,
 602      /* S_RECOVERY           ==> */ S_RECOVERY,
 603      /* S_RELEASE_DC         ==> */ S_RELEASE_DC,
 604      /* S_STARTING           ==> */ S_STARTING,
 605      /* S_PENDING            ==> */ S_HALT,
 606      /* S_STOPPING           ==> */ S_STOPPING,
 607      /* S_TERMINATE          ==> */ S_TERMINATE,
 608      /* S_TRANSITION_ENGINE  ==> */ S_HALT,
 609      /* S_HALT               ==> */ S_HALT,
 610      },
 611 };
 612 
 613 /*
 614  *      The action table.  Each entry is a set of actions to take or-ed
 615  *      together.  Like the state table, the rows are inputs, and
 616  *      the columns are states.
 617  */
 618 
 619 /* NOTE: In the fsa, the actions are extracted then state is updated. */
 620 
 621 const uint64_t crmd_fsa_actions[MAXINPUT][MAXSTATE] = {
 622 
 623 /* Got an I_NULL */
 624     {
 625      /* S_IDLE               ==> */ A_NOTHING,
 626      /* S_ELECTION           ==> */ A_NOTHING,
 627      /* S_INTEGRATION        ==> */ A_NOTHING,
 628      /* S_FINALIZE_JOIN      ==> */ A_NOTHING,
 629      /* S_NOT_DC             ==> */ A_NOTHING,
 630      /* S_POLICY_ENGINE      ==> */ A_NOTHING,
 631      /* S_RECOVERY           ==> */ A_NOTHING,
 632      /* S_RELEASE_DC         ==> */ A_NOTHING,
 633      /* S_STARTING           ==> */ A_NOTHING,
 634      /* S_PENDING            ==> */ A_NOTHING,
 635      /* S_STOPPING           ==> */ A_NOTHING,
 636      /* S_TERMINATE          ==> */ A_NOTHING,
 637      /* S_TRANSITION_ENGINE  ==> */ A_NOTHING,
 638      /* S_HALT               ==> */ A_NOTHING,
 639      },
 640 
 641 /* Got an I_CIB_OP */
 642     {
 643      /* S_IDLE               ==> */ A_ERROR,
 644      /* S_ELECTION           ==> */ A_ERROR,
 645      /* S_INTEGRATION        ==> */ A_ERROR,
 646      /* S_FINALIZE_JOIN      ==> */ A_ERROR,
 647      /* S_NOT_DC             ==> */ A_ERROR,
 648      /* S_POLICY_ENGINE      ==> */ A_ERROR,
 649      /* S_RECOVERY           ==> */ A_ERROR,
 650      /* S_RELEASE_DC         ==> */ A_ERROR,
 651      /* S_STARTING           ==> */ A_ERROR,
 652      /* S_PENDING            ==> */ A_ERROR,
 653      /* S_STOPPING           ==> */ A_ERROR,
 654      /* S_TERMINATE          ==> */ A_ERROR,
 655      /* S_TRANSITION_ENGINE  ==> */ A_ERROR,
 656      /* S_HALT               ==> */ A_ERROR,
 657      },
 658 
 659 /* Got an I_CIB_UPDATE */
 660     {
 661      /* S_IDLE               ==> */ A_LOG,
 662      /* S_ELECTION           ==> */ A_LOG,
 663      /* S_INTEGRATION        ==> */ A_WARN,
 664      /* S_FINALIZE_JOIN      ==> */ A_WARN,
 665      /* S_NOT_DC             ==> */ A_WARN,
 666      /* S_POLICY_ENGINE      ==> */ A_LOG,
 667      /* S_RECOVERY           ==> */ A_WARN,
 668      /* S_RELEASE_DC         ==> */ A_WARN,
 669      /* S_STARTING           ==> */ A_WARN,
 670      /* S_PENDING            ==> */ A_WARN,
 671      /* S_STOPPING           ==> */ A_WARN,
 672      /* S_TERMINATE          ==> */ A_WARN,
 673      /* S_TRANSITION_ENGINE  ==> */ A_LOG,
 674      /* S_HALT               ==> */ A_WARN,
 675      },
 676 
 677 /* Got an I_DC_TIMEOUT */
 678     {
 679      /* S_IDLE               ==> */ A_WARN,
 680      /* S_ELECTION           ==> */ A_ELECTION_VOTE,
 681      /* S_INTEGRATION        ==> */ A_WARN,
 682      /* S_FINALIZE_JOIN      ==> */ A_WARN,
 683      /* S_NOT_DC             ==> */ A_ELECTION_VOTE | A_WARN,
 684      /* S_POLICY_ENGINE      ==> */ A_WARN,
 685      /* S_RECOVERY           ==> */ A_NOTHING,
 686      /* S_RELEASE_DC         ==> */ A_WARN,
 687      /* S_STARTING           ==> */ A_WARN,
 688      /* S_PENDING            ==> */ A_ELECTION_VOTE | A_WARN,
 689      /* S_STOPPING           ==> */ A_NOTHING,
 690      /* S_TERMINATE          ==> */ A_NOTHING,
 691      /* S_TRANSITION_ENGINE  ==> */ A_TE_CANCEL | A_WARN,
 692      /* S_HALT               ==> */ A_WARN,
 693      },
 694 
 695 /* Got an I_ELECTION */
 696     {
 697      /* S_IDLE               ==> */ A_ELECTION_VOTE,
 698      /* S_ELECTION           ==> */ A_ELECTION_VOTE,
 699      /* S_INTEGRATION        ==> */ A_ELECTION_VOTE,
 700      /* S_FINALIZE_JOIN      ==> */ A_ELECTION_VOTE,
 701      /* S_NOT_DC             ==> */ A_ELECTION_VOTE,
 702      /* S_POLICY_ENGINE      ==> */ A_ELECTION_VOTE,
 703      /* S_RECOVERY           ==> */ A_LOG,
 704      /* S_RELEASE_DC         ==> */ A_LOG,
 705      /* S_STARTING           ==> */ A_WARN,
 706      /* S_PENDING            ==> */ A_ELECTION_VOTE,
 707      /* S_STOPPING           ==> */ A_LOG,
 708      /* S_TERMINATE          ==> */ A_LOG,
 709      /* S_TRANSITION_ENGINE  ==> */ A_ELECTION_VOTE,
 710      /* S_HALT               ==> */ A_ELECTION_VOTE,
 711      },
 712 
 713 /* Got an I_PE_CALC */
 714     {
 715      /* S_IDLE               ==> */ A_PE_INVOKE,
 716      /* S_ELECTION           ==> */ A_NOTHING,
 717      /* S_INTEGRATION        ==> */ A_NOTHING,
 718      /* S_FINALIZE_JOIN      ==> */ A_NOTHING,
 719      /* S_NOT_DC             ==> */ A_WARN,
 720      /* S_POLICY_ENGINE      ==> */ A_PE_INVOKE,
 721      /* S_RECOVERY           ==> */ A_NOTHING,
 722      /* S_RELEASE_DC         ==> */ A_NOTHING,
 723      /* S_STARTING           ==> */ A_ERROR,
 724      /* S_PENDING            ==> */ A_WARN,
 725      /* S_STOPPING           ==> */ A_WARN,
 726      /* S_TERMINATE          ==> */ A_ERROR,
 727      /* S_TRANSITION_ENGINE  ==> */ A_PE_INVOKE,
 728      /* S_HALT               ==> */ A_ERROR,
 729      },
 730 
 731 /* Got an I_RELEASE_DC */
 732     {
 733      /* S_IDLE               ==> */ O_RELEASE,
 734      /* S_ELECTION           ==> */ O_RELEASE,
 735      /* S_INTEGRATION        ==> */ O_RELEASE | A_WARN,
 736      /* S_FINALIZE_JOIN      ==> */ O_RELEASE | A_WARN,
 737      /* S_NOT_DC             ==> */ A_WARN,
 738      /* S_POLICY_ENGINE      ==> */ O_RELEASE | A_WARN,
 739      /* S_RECOVERY           ==> */ O_RELEASE,
 740      /* S_RELEASE_DC         ==> */ O_RELEASE | A_WARN,
 741      /* S_STARTING           ==> */ A_ERROR,
 742      /* S_PENDING            ==> */ A_WARN,
 743      /* S_STOPPING           ==> */ A_WARN,
 744      /* S_TERMINATE          ==> */ A_WARN,
 745      /* S_TRANSITION_ENGINE  ==> */ O_RELEASE | A_WARN,
 746      /* S_HALT               ==> */ A_WARN,
 747      },
 748 
 749 /* Got an I_ELECTION_DC */
 750     {
 751      /* S_IDLE               ==> */ A_WARN | A_ELECTION_VOTE,
 752      /* S_ELECTION           ==> */
 753      A_LOG | A_DC_TAKEOVER | A_PE_START | A_TE_START | A_DC_JOIN_OFFER_ALL | A_DC_TIMER_STOP,
 754      /* S_INTEGRATION        ==> */ A_WARN | A_ELECTION_VOTE | A_DC_JOIN_OFFER_ALL,
 755      /* S_FINALIZE_JOIN      ==> */ A_WARN | A_ELECTION_VOTE | A_DC_JOIN_OFFER_ALL,
 756      /* S_NOT_DC             ==> */ A_LOG | A_ELECTION_VOTE,
 757      /* S_POLICY_ENGINE      ==> */ A_WARN | A_ELECTION_VOTE,
 758      /* S_RECOVERY           ==> */ A_WARN,
 759      /* S_RELEASE_DC         ==> */ A_WARN | A_ELECTION_VOTE,
 760      /* S_STARTING           ==> */ A_LOG | A_WARN,
 761      /* S_PENDING            ==> */ A_LOG | A_WARN,
 762      /* S_STOPPING           ==> */ A_WARN,
 763      /* S_TERMINATE          ==> */ A_WARN,
 764      /* S_TRANSITION_ENGINE  ==> */ A_WARN | A_ELECTION_VOTE,
 765      /* S_HALT               ==> */ A_WARN,
 766      },
 767 
 768 /* Got an I_ERROR */
 769     {
 770      /* S_IDLE               ==> */ A_ERROR | A_RECOVER | O_RELEASE | A_ELECTION_START,
 771      /* S_ELECTION           ==> */ A_ERROR | A_RECOVER | O_RELEASE,
 772      /* S_INTEGRATION        ==> */ A_ERROR | A_RECOVER | O_RELEASE | A_ELECTION_START,
 773      /* S_FINALIZE_JOIN      ==> */ A_ERROR | A_RECOVER | O_RELEASE | A_ELECTION_START,
 774      /* S_NOT_DC             ==> */ A_ERROR | A_RECOVER,
 775      /* S_POLICY_ENGINE      ==> */ A_ERROR | A_RECOVER | O_RELEASE | A_ELECTION_START,
 776      /* S_RECOVERY           ==> */ A_ERROR | O_RELEASE,
 777      /* S_RELEASE_DC         ==> */ A_ERROR | A_RECOVER,
 778      /* S_STARTING           ==> */ A_ERROR | A_RECOVER,
 779      /* S_PENDING            ==> */ A_ERROR | A_RECOVER,
 780      /* S_STOPPING           ==> */ A_ERROR | A_EXIT_1,
 781      /* S_TERMINATE          ==> */ A_ERROR | A_EXIT_1,
 782      /* S_TRANSITION_ENGINE  ==> */ A_ERROR | A_RECOVER | O_RELEASE | A_ELECTION_START,
 783      /* S_HALT               ==> */ A_ERROR | A_RECOVER | O_RELEASE | A_ELECTION_START,
 784      },
 785 
 786 /* Got an I_FAIL */
 787     {
 788      /* S_IDLE               ==> */ A_WARN,
 789      /* S_ELECTION           ==> */ A_WARN,
 790      /* S_INTEGRATION        ==> */ A_WARN | A_DC_JOIN_OFFER_ALL,
 791      /* S_FINALIZE_JOIN      ==> */ A_WARN | A_DC_JOIN_OFFER_ALL,
 792      /* S_NOT_DC             ==> */ A_WARN,
 793      /* S_POLICY_ENGINE      ==> */ A_WARN | A_DC_JOIN_OFFER_ALL | A_TE_CANCEL,
 794      /* S_RECOVERY           ==> */ A_WARN | O_RELEASE,
 795      /* S_RELEASE_DC         ==> */ A_WARN,
 796      /* S_STARTING           ==> */ A_WARN,
 797      /* S_PENDING            ==> */ A_WARN,
 798      /* S_STOPPING           ==> */ A_WARN,
 799      /* S_TERMINATE          ==> */ A_WARN | A_EXIT_1,
 800      /* S_TRANSITION_ENGINE  ==> */ A_WARN | O_LRM_RECONNECT | A_PE_INVOKE | A_TE_CANCEL,
 801      /* S_HALT               ==> */ A_WARN,
 802      },
 803 
 804 /* Got an I_INTEGRATED */
 805     {
 806      /* S_IDLE               ==> */ A_NOTHING,
 807      /* S_ELECTION           ==> */ A_WARN,
 808      /* S_INTEGRATION        ==> */ A_DC_JOIN_FINALIZE,
 809      /* S_FINALIZE_JOIN      ==> */ A_WARN,
 810      /* S_NOT_DC             ==> */ A_WARN,
 811      /* S_POLICY_ENGINE      ==> */ A_NOTHING,
 812      /* S_RECOVERY           ==> */ A_WARN,
 813      /* S_RELEASE_DC         ==> */ A_WARN,
 814      /* S_STARTING           ==> */ A_WARN,
 815      /* S_PENDING            ==> */ A_WARN,
 816      /* S_STOPPING           ==> */ A_WARN,
 817      /* S_TERMINATE          ==> */ A_WARN,
 818      /* S_TRANSITION_ENGINE  ==> */ A_NOTHING,
 819      /* S_HALT               ==> */ A_WARN,
 820      },
 821 
 822 /* Got an I_FINALIZED */
 823     {
 824      /* S_IDLE               ==> */ A_NOTHING,
 825      /* S_ELECTION           ==> */ A_WARN,
 826      /* S_INTEGRATION        ==> */ A_WARN,
 827      /* S_FINALIZE_JOIN      ==> */ A_DC_JOIN_FINAL | A_TE_CANCEL,
 828      /* S_NOT_DC             ==> */ A_WARN,
 829      /* S_POLICY_ENGINE      ==> */ A_NOTHING,
 830      /* S_RECOVERY           ==> */ A_WARN,
 831      /* S_RELEASE_DC         ==> */ A_WARN,
 832      /* S_STARTING           ==> */ A_WARN,
 833      /* S_PENDING            ==> */ A_WARN,
 834      /* S_STOPPING           ==> */ A_WARN,
 835      /* S_TERMINATE          ==> */ A_WARN,
 836      /* S_TRANSITION_ENGINE  ==> */ A_NOTHING,
 837      /* S_HALT               ==> */ A_WARN,
 838      },
 839 
 840 /* Got an I_NODE_JOIN */
 841     {
 842      /* S_IDLE               ==> */ A_TE_HALT | A_DC_JOIN_OFFER_ONE,
 843      /* S_ELECTION           ==> */ A_WARN,
 844      /* S_INTEGRATION        ==> */ A_DC_JOIN_OFFER_ONE,
 845      /* S_FINALIZE_JOIN      ==> */ A_DC_JOIN_OFFER_ONE,
 846      /* S_NOT_DC             ==> */ A_WARN,
 847      /* S_POLICY_ENGINE      ==> */ A_DC_JOIN_OFFER_ONE,
 848      /* S_RECOVERY           ==> */ A_WARN,
 849      /* S_RELEASE_DC         ==> */ A_WARN,
 850      /* S_STARTING           ==> */ A_WARN,
 851      /* S_PENDING            ==> */ A_WARN,
 852      /* S_STOPPING           ==> */ A_WARN,
 853      /* S_TERMINATE          ==> */ A_WARN,
 854      /* S_TRANSITION_ENGINE  ==> */ A_TE_HALT | A_DC_JOIN_OFFER_ONE,
 855      /* S_HALT               ==> */ A_WARN,
 856      },
 857 
 858 /* Got an I_NOT_DC */
 859     {
 860      /* S_IDLE               ==> */ A_WARN | O_RELEASE,
 861      /* S_ELECTION           ==> */ A_ERROR | A_ELECTION_START | A_DC_TIMER_STOP,
 862      /* S_INTEGRATION        ==> */ A_ERROR | O_RELEASE,
 863      /* S_FINALIZE_JOIN      ==> */ A_ERROR | O_RELEASE,
 864      /* S_NOT_DC             ==> */ A_LOG,
 865      /* S_POLICY_ENGINE      ==> */ A_ERROR | O_RELEASE,
 866      /* S_RECOVERY           ==> */ A_ERROR | O_RELEASE,
 867      /* S_RELEASE_DC         ==> */ A_ERROR | O_RELEASE,
 868      /* S_STARTING           ==> */ A_WARN,
 869      /* S_PENDING            ==> */ A_LOG | A_DC_TIMER_STOP,
 870      /* S_STOPPING           ==> */ A_WARN,
 871      /* S_TERMINATE          ==> */ A_WARN,
 872      /* S_TRANSITION_ENGINE  ==> */ A_ERROR | O_RELEASE,
 873      /* S_HALT               ==> */ A_WARN,
 874      },
 875 
 876 /* Got an I_RECOVERED */
 877     {
 878      /* S_IDLE               ==> */ A_WARN,
 879      /* S_ELECTION           ==> */ A_ELECTION_VOTE,
 880      /* S_INTEGRATION        ==> */ A_WARN,
 881      /* S_FINALIZE_JOIN      ==> */ A_WARN,
 882      /* S_NOT_DC             ==> */ A_WARN,
 883      /* S_POLICY_ENGINE      ==> */ A_WARN,
 884      /* S_RECOVERY           ==> */ A_LOG,
 885      /* S_RELEASE_DC         ==> */ A_WARN,
 886      /* S_STARTING           ==> */ A_WARN,
 887      /* S_PENDING            ==> */ A_WARN,
 888      /* S_STOPPING           ==> */ A_WARN,
 889      /* S_TERMINATE          ==> */ A_WARN,
 890      /* S_TRANSITION_ENGINE  ==> */ A_WARN,
 891      /* S_HALT               ==> */ A_WARN,
 892      },
 893 
 894 /* Got an I_RELEASE_FAIL */
 895     {
 896      /* S_IDLE               ==> */ A_WARN,
 897      /* S_ELECTION           ==> */ A_WARN,
 898      /* S_INTEGRATION        ==> */ A_WARN,
 899      /* S_FINALIZE_JOIN      ==> */ A_WARN,
 900      /* S_NOT_DC             ==> */ A_WARN,
 901      /* S_POLICY_ENGINE      ==> */ A_NOTHING,
 902      /* S_RECOVERY           ==> */ A_WARN | A_SHUTDOWN_REQ,
 903      /* S_RELEASE_DC         ==> */ A_NOTHING,
 904      /* S_STARTING           ==> */ A_WARN,
 905      /* S_PENDING            ==> */ A_WARN,
 906      /* S_STOPPING           ==> */ A_WARN,
 907      /* S_TERMINATE          ==> */ A_WARN,
 908      /* S_TRANSITION_ENGINE  ==> */ A_WARN,
 909      /* S_HALT               ==> */ A_WARN,
 910      },
 911 
 912 /* Got an I_RELEASE_SUCCESS */
 913     {
 914      /* S_IDLE               ==> */ A_WARN,
 915      /* S_ELECTION           ==> */ A_WARN,
 916      /* S_INTEGRATION        ==> */ A_WARN,
 917      /* S_FINALIZE_JOIN      ==> */ A_WARN,
 918      /* S_NOT_DC             ==> */ A_WARN,
 919      /* S_POLICY_ENGINE      ==> */ A_WARN,
 920      /* S_RECOVERY           ==> */ A_WARN,
 921      /* S_RELEASE_DC         ==> */ A_LOG,
 922      /* S_STARTING           ==> */ A_WARN,
 923      /* S_PENDING            ==> */ A_LOG,
 924      /* S_STOPPING           ==> */ A_WARN,
 925      /* S_TERMINATE          ==> */ A_WARN,
 926      /* S_TRANSITION_ENGINE  ==> */ A_WARN,
 927      /* S_HALT               ==> */ A_WARN,
 928      },
 929 
 930 /* Got an I_RESTART */
 931     {
 932      /* S_IDLE               ==> */ A_NOTHING,
 933      /* S_ELECTION           ==> */ A_LOG | A_ELECTION_VOTE,
 934      /* S_INTEGRATION        ==> */ A_LOG | A_DC_JOIN_OFFER_ALL,
 935      /* S_FINALIZE_JOIN      ==> */ A_LOG | A_DC_JOIN_FINALIZE,
 936      /* S_NOT_DC             ==> */ A_LOG | A_NOTHING,
 937      /* S_POLICY_ENGINE      ==> */ A_LOG | A_PE_INVOKE,
 938      /* S_RECOVERY           ==> */ A_LOG | A_RECOVER | O_RELEASE,
 939      /* S_RELEASE_DC         ==> */ A_LOG | O_RELEASE,
 940      /* S_STARTING           ==> */ A_LOG,
 941      /* S_PENDING            ==> */ A_LOG,
 942      /* S_STOPPING           ==> */ A_LOG,
 943      /* S_TERMINATE          ==> */ A_LOG,
 944      /* S_TRANSITION_ENGINE  ==> */ A_LOG | A_TE_INVOKE,
 945      /* S_HALT               ==> */ A_WARN,
 946      },
 947 
 948 /* Got an I_TE_SUCCESS */
 949     {
 950      /* S_IDLE               ==> */ A_LOG,
 951      /* S_ELECTION           ==> */ A_WARN,
 952      /* S_INTEGRATION        ==> */ A_WARN,
 953      /* S_FINALIZE_JOIN      ==> */ A_WARN,
 954      /* S_NOT_DC             ==> */ A_ERROR,
 955      /* S_POLICY_ENGINE      ==> */ A_WARN,
 956      /* S_RECOVERY           ==> */ A_RECOVER | A_WARN,
 957      /* S_RELEASE_DC         ==> */ A_WARN,
 958      /* S_STARTING           ==> */ A_ERROR,
 959      /* S_PENDING            ==> */ A_ERROR,
 960      /* S_STOPPING           ==> */ A_WARN,
 961      /* S_TERMINATE          ==> */ A_WARN,
 962      /* S_TRANSITION_ENGINE  ==> */ A_LOG,
 963      /* S_HALT               ==> */ A_WARN,
 964      },
 965 
 966 /* Got an I_ROUTER */
 967     {
 968      /* S_IDLE               ==> */ A_MSG_ROUTE,
 969      /* S_ELECTION           ==> */ A_MSG_ROUTE,
 970      /* S_INTEGRATION        ==> */ A_MSG_ROUTE,
 971      /* S_FINALIZE_JOIN      ==> */ A_MSG_ROUTE,
 972      /* S_NOT_DC             ==> */ A_MSG_ROUTE,
 973      /* S_POLICY_ENGINE      ==> */ A_MSG_ROUTE,
 974      /* S_RECOVERY           ==> */ A_MSG_ROUTE,
 975      /* S_RELEASE_DC         ==> */ A_MSG_ROUTE,
 976      /* S_STARTING           ==> */ A_MSG_ROUTE,
 977      /* S_PENDING            ==> */ A_MSG_ROUTE,
 978      /* S_STOPPING           ==> */ A_MSG_ROUTE,
 979      /* S_TERMINATE          ==> */ A_MSG_ROUTE,
 980      /* S_TRANSITION_ENGINE  ==> */ A_MSG_ROUTE,
 981      /* S_HALT               ==> */ A_WARN | A_MSG_ROUTE,
 982      },
 983 
 984 /* Got an I_SHUTDOWN */
 985     {
 986      /* S_IDLE               ==> */ A_LOG | A_SHUTDOWN_REQ,
 987      /* S_ELECTION           ==> */ A_LOG | A_SHUTDOWN_REQ | A_ELECTION_VOTE,
 988      /* S_INTEGRATION        ==> */ A_LOG | A_SHUTDOWN_REQ,
 989      /* S_FINALIZE_JOIN      ==> */ A_LOG | A_SHUTDOWN_REQ,
 990      /* S_NOT_DC             ==> */ A_SHUTDOWN_REQ,
 991      /* S_POLICY_ENGINE      ==> */ A_LOG | A_SHUTDOWN_REQ,
 992      /* S_RECOVERY           ==> */ A_WARN | O_EXIT | O_RELEASE,
 993      /* S_RELEASE_DC         ==> */ A_WARN | A_SHUTDOWN_REQ,
 994      /* S_STARTING           ==> */ A_WARN | O_EXIT,
 995      /* S_PENDING            ==> */ A_SHUTDOWN_REQ,
 996      /* S_STOPPING           ==> */ A_LOG,
 997      /* S_TERMINATE          ==> */ A_LOG,
 998      /* S_TRANSITION_ENGINE  ==> */ A_WARN | A_SHUTDOWN_REQ,
 999      /* S_HALT               ==> */ A_WARN | A_ELECTION_START | A_SHUTDOWN_REQ,
1000      },
1001 
1002 /* Got an I_STOP */
1003     {
1004      /* S_IDLE               ==> */ A_ERROR | O_RELEASE | O_EXIT,
1005      /* S_ELECTION           ==> */ O_RELEASE | O_EXIT,
1006      /* S_INTEGRATION        ==> */ A_WARN | O_RELEASE | O_EXIT,
1007      /* S_FINALIZE_JOIN      ==> */ A_ERROR | O_RELEASE | O_EXIT,
1008      /* S_NOT_DC             ==> */ O_EXIT,
1009      /* S_POLICY_ENGINE      ==> */ A_WARN | O_RELEASE | O_EXIT,
1010      /* S_RECOVERY           ==> */ A_ERROR | O_RELEASE | O_EXIT,
1011      /* S_RELEASE_DC         ==> */ A_ERROR | O_RELEASE | O_EXIT,
1012      /* S_STARTING           ==> */ O_EXIT,
1013      /* S_PENDING            ==> */ O_EXIT,
1014      /* S_STOPPING           ==> */ O_EXIT,
1015      /* S_TERMINATE          ==> */ A_ERROR | A_EXIT_1,
1016      /* S_TRANSITION_ENGINE  ==> */ A_LOG | O_RELEASE | O_EXIT,
1017      /* S_HALT               ==> */ O_RELEASE | O_EXIT | A_WARN,
1018      },
1019 
1020 /* Got an I_TERMINATE */
1021     {
1022      /* S_IDLE               ==> */ A_ERROR | O_EXIT,
1023      /* S_ELECTION           ==> */ A_ERROR | O_EXIT,
1024      /* S_INTEGRATION        ==> */ A_ERROR | O_EXIT,
1025      /* S_FINALIZE_JOIN      ==> */ A_ERROR | O_EXIT,
1026      /* S_NOT_DC             ==> */ A_ERROR | O_EXIT,
1027      /* S_POLICY_ENGINE      ==> */ A_ERROR | O_EXIT,
1028      /* S_RECOVERY           ==> */ A_ERROR | O_EXIT,
1029      /* S_RELEASE_DC         ==> */ A_ERROR | O_EXIT,
1030      /* S_STARTING           ==> */ O_EXIT,
1031      /* S_PENDING            ==> */ A_ERROR | O_EXIT,
1032      /* S_STOPPING           ==> */ O_EXIT,
1033      /* S_TERMINATE          ==> */ O_EXIT,
1034      /* S_TRANSITION_ENGINE  ==> */ A_ERROR | O_EXIT,
1035      /* S_HALT               ==> */ A_ERROR | O_EXIT,
1036      },
1037 
1038 /* Got an I_STARTUP */
1039     {
1040      /* S_IDLE               ==> */ A_WARN,
1041      /* S_ELECTION           ==> */ A_WARN,
1042      /* S_INTEGRATION        ==> */ A_WARN,
1043      /* S_FINALIZE_JOIN      ==> */ A_WARN,
1044      /* S_NOT_DC             ==> */ A_WARN,
1045      /* S_POLICY_ENGINE      ==> */ A_WARN,
1046      /* S_RECOVERY           ==> */ A_WARN,
1047      /* S_RELEASE_DC         ==> */ A_WARN,
1048      /* S_STARTING           ==> */
1049      A_LOG | A_STARTUP | A_CIB_START | A_LRM_CONNECT | A_HA_CONNECT | A_READCONFIG | A_STARTED,
1050      /* S_PENDING            ==> */ A_LOG,
1051      /* S_STOPPING           ==> */ A_WARN,
1052      /* S_TERMINATE          ==> */ A_WARN,
1053      /* S_TRANSITION_ENGINE  ==> */ A_WARN,
1054      /* S_HALT               ==> */ A_WARN,
1055      },
1056 
1057 /* Got an I_PE_SUCCESS */
1058     {
1059      /* S_IDLE               ==> */ A_LOG,
1060      /* S_ELECTION           ==> */ A_WARN,
1061      /* S_INTEGRATION        ==> */ A_WARN,
1062      /* S_FINALIZE_JOIN      ==> */ A_WARN,
1063      /* S_NOT_DC             ==> */ A_NOTHING,
1064      /* S_POLICY_ENGINE      ==> */ A_TE_INVOKE,
1065      /* S_RECOVERY           ==> */ A_RECOVER | A_LOG,
1066      /* S_RELEASE_DC         ==> */ A_LOG,
1067      /* S_STARTING           ==> */ A_ERROR,
1068      /* S_PENDING            ==> */ A_LOG,
1069      /* S_STOPPING           ==> */ A_ERROR,
1070      /* S_TERMINATE          ==> */ A_ERROR,
1071      /* S_TRANSITION_ENGINE  ==> */ A_LOG,
1072      /* S_HALT               ==> */ A_WARN,
1073      },
1074 
1075 /* Got an I_JOIN_OFFER */
1076     {
1077      /* S_IDLE               ==> */ A_WARN | A_CL_JOIN_REQUEST,
1078      /* S_ELECTION           ==> */ A_WARN | A_ELECTION_VOTE,
1079      /* S_INTEGRATION        ==> */ A_CL_JOIN_REQUEST,
1080      /* S_FINALIZE_JOIN      ==> */ A_CL_JOIN_REQUEST,
1081      /* S_NOT_DC             ==> */ A_CL_JOIN_REQUEST | A_DC_TIMER_STOP,
1082      /* S_POLICY_ENGINE      ==> */ A_WARN | A_CL_JOIN_REQUEST,
1083      /* S_RECOVERY           ==> */ A_WARN | A_CL_JOIN_REQUEST | A_DC_TIMER_STOP,
1084      /* S_RELEASE_DC         ==> */ A_WARN | A_CL_JOIN_REQUEST | A_DC_TIMER_STOP,
1085      /* S_STARTING           ==> */ A_LOG,
1086      /* S_PENDING            ==> */ A_CL_JOIN_REQUEST | A_DC_TIMER_STOP,
1087      /* S_STOPPING           ==> */ A_LOG,
1088      /* S_TERMINATE          ==> */ A_LOG,
1089      /* S_TRANSITION_ENGINE  ==> */ A_WARN | A_CL_JOIN_REQUEST,
1090      /* S_HALT               ==> */ A_WARN,
1091      },
1092 
1093 /* Got an I_JOIN_REQUEST */
1094     {
1095      /* S_IDLE               ==> */ A_DC_JOIN_OFFER_ONE,
1096      /* S_ELECTION           ==> */ A_WARN,
1097      /* S_INTEGRATION        ==> */ A_DC_JOIN_PROCESS_REQ,
1098      /* S_FINALIZE_JOIN      ==> */ A_DC_JOIN_OFFER_ONE,
1099      /* S_NOT_DC             ==> */ A_WARN,
1100      /* S_POLICY_ENGINE      ==> */ A_DC_JOIN_OFFER_ONE,
1101      /* S_RECOVERY           ==> */ A_WARN,
1102      /* S_RELEASE_DC         ==> */ A_WARN,
1103      /* S_STARTING           ==> */ A_WARN,
1104      /* S_PENDING            ==> */ A_WARN,
1105      /* S_STOPPING           ==> */ A_WARN,
1106      /* S_TERMINATE          ==> */ A_WARN,
1107      /* S_TRANSITION_ENGINE  ==> */ A_DC_JOIN_OFFER_ONE,
1108      /* S_HALT               ==> */ A_WARN,
1109      },
1110 
1111 /* Got an I_JOIN_RESULT */
1112     {
1113      /* S_IDLE               ==> */ A_ERROR | A_TE_HALT | A_DC_JOIN_OFFER_ALL,
1114      /* S_ELECTION           ==> */ A_LOG,
1115      /* S_INTEGRATION        ==> */ A_LOG | A_CL_JOIN_RESULT  | A_DC_JOIN_PROCESS_ACK,
1116      /* S_FINALIZE_JOIN      ==> */ A_CL_JOIN_RESULT | A_DC_JOIN_PROCESS_ACK,
1117      /* S_NOT_DC             ==> */ A_ERROR | A_CL_JOIN_ANNOUNCE,
1118      /* S_POLICY_ENGINE      ==> */ A_ERROR | A_TE_HALT | A_DC_JOIN_OFFER_ALL,
1119      /* S_RECOVERY           ==> */ A_LOG,
1120      /* S_RELEASE_DC         ==> */ A_LOG,
1121      /* S_STARTING           ==> */ A_ERROR,
1122      /* S_PENDING            ==> */ A_CL_JOIN_RESULT,
1123      /* S_STOPPING           ==> */ A_ERROR,
1124      /* S_TERMINATE          ==> */ A_ERROR,
1125      /* S_TRANSITION_ENGINE  ==> */ A_ERROR | A_TE_HALT | A_DC_JOIN_OFFER_ALL,
1126      /* S_HALT               ==> */ A_WARN,
1127      },
1128 
1129 /* Got an I_WAIT_FOR_EVENT */
1130     {
1131      /* S_IDLE               ==> */ A_LOG,
1132      /* S_ELECTION           ==> */ A_LOG,
1133      /* S_INTEGRATION        ==> */ A_LOG,
1134      /* S_FINALIZE_JOIN      ==> */ A_LOG,
1135      /* S_NOT_DC             ==> */ A_LOG,
1136      /* S_POLICY_ENGINE      ==> */ A_LOG,
1137      /* S_RECOVERY           ==> */ A_LOG,
1138      /* S_RELEASE_DC         ==> */ A_LOG,
1139      /* S_STARTING           ==> */ A_LOG,
1140      /* S_PENDING            ==> */ A_LOG,
1141      /* S_STOPPING           ==> */ A_LOG,
1142      /* S_TERMINATE          ==> */ A_LOG,
1143      /* S_TRANSITION_ENGINE  ==> */ A_LOG,
1144      /* S_HALT               ==> */ A_WARN,
1145      },
1146 
1147 /* Got an I_DC_HEARTBEAT */
1148     {
1149      /* S_IDLE               ==> */ A_ERROR,
1150      /* S_ELECTION           ==> */ A_WARN | A_ELECTION_VOTE,
1151      /* S_INTEGRATION        ==> */ A_ERROR,
1152      /* S_FINALIZE_JOIN      ==> */ A_ERROR,
1153      /* S_NOT_DC             ==> */ A_NOTHING,
1154      /* S_POLICY_ENGINE      ==> */ A_ERROR,
1155      /* S_RECOVERY           ==> */ A_NOTHING,
1156      /* S_RELEASE_DC         ==> */ A_LOG,
1157      /* S_STARTING           ==> */ A_LOG,
1158      /* S_PENDING            ==> */ A_LOG | A_CL_JOIN_ANNOUNCE,
1159      /* S_STOPPING           ==> */ A_NOTHING,
1160      /* S_TERMINATE          ==> */ A_NOTHING,
1161      /* S_TRANSITION_ENGINE  ==> */ A_ERROR,
1162      /* S_HALT               ==> */ A_WARN,
1163      },
1164 
1165 /* Got an I_LRM_EVENT */
1166     {
1167      /* S_IDLE               ==> */ A_LRM_EVENT,
1168      /* S_ELECTION           ==> */ A_LRM_EVENT,
1169      /* S_INTEGRATION        ==> */ A_LRM_EVENT,
1170      /* S_FINALIZE_JOIN      ==> */ A_LRM_EVENT,
1171      /* S_NOT_DC             ==> */ A_LRM_EVENT,
1172      /* S_POLICY_ENGINE      ==> */ A_LRM_EVENT,
1173      /* S_RECOVERY           ==> */ A_LRM_EVENT,
1174      /* S_RELEASE_DC         ==> */ A_LRM_EVENT,
1175      /* S_STARTING           ==> */ A_LRM_EVENT,
1176      /* S_PENDING            ==> */ A_LRM_EVENT,
1177      /* S_STOPPING           ==> */ A_LRM_EVENT,
1178      /* S_TERMINATE          ==> */ A_LRM_EVENT,
1179      /* S_TRANSITION_ENGINE  ==> */ A_LRM_EVENT,
1180      /* S_HALT               ==> */ A_WARN,
1181      },
1182 
1183 /* For everyone ending up in S_PENDING, (re)start the DC timer and wait for I_JOIN_OFFER or I_NOT_DC */
1184 /* Got an I_PENDING */
1185     {
1186      /* S_IDLE               ==> */ O_RELEASE | O_DC_TIMER_RESTART,
1187      /* S_ELECTION           ==> */ O_RELEASE | O_DC_TIMER_RESTART,
1188      /* S_INTEGRATION        ==> */ O_RELEASE | O_DC_TIMER_RESTART,
1189      /* S_FINALIZE_JOIN      ==> */ O_RELEASE | O_DC_TIMER_RESTART,
1190      /* S_NOT_DC             ==> */ A_LOG | O_DC_TIMER_RESTART,
1191      /* S_POLICY_ENGINE      ==> */ O_RELEASE | O_DC_TIMER_RESTART,
1192      /* S_RECOVERY           ==> */ A_WARN,
1193      /* S_RELEASE_DC         ==> */ A_WARN | O_DC_TIMER_RESTART,
1194      /* S_STARTING           ==> */ A_LOG | A_DC_TIMER_START | A_CL_JOIN_QUERY,
1195      /* S_PENDING            ==> */ A_LOG | O_DC_TIMER_RESTART,
1196      /* S_STOPPING           ==> */ A_WARN,
1197      /* S_TERMINATE          ==> */ A_WARN,
1198      /* S_TRANSITION_ENGINE  ==> */ O_RELEASE | O_DC_TIMER_RESTART,
1199      /* S_HALT               ==> */ A_WARN,
1200      },
1201 
1202 /* Got an I_HALT */
1203     {
1204      /* S_IDLE               ==> */ A_WARN,
1205      /* S_ELECTION           ==> */ A_WARN,
1206      /* S_INTEGRATION        ==> */ A_WARN,
1207      /* S_FINALIZE_JOIN      ==> */ A_WARN,
1208      /* S_NOT_DC             ==> */ A_WARN,
1209      /* S_POLICY_ENGINE      ==> */ A_WARN,
1210      /* S_RECOVERY           ==> */ A_WARN,
1211      /* S_RELEASE_DC         ==> */ A_WARN,
1212      /* S_STARTING           ==> */ A_WARN,
1213      /* S_PENDING            ==> */ A_WARN,
1214      /* S_STOPPING           ==> */ A_WARN,
1215      /* S_TERMINATE          ==> */ A_WARN,
1216      /* S_TRANSITION_ENGINE  ==> */ A_WARN,
1217      /* S_HALT               ==> */ A_WARN,
1218      },
1219 };
1220 
1221 #endif

/* [previous][next][first][last][top][bottom][index][help] */