Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-06-20 08:46:38

0001 /*****************************************************************************\
0002  *  smd_ns.h - Library for fault tolerant application support
0003  *****************************************************************************
0004  *  Copyright (C) 2013-2014 SchedMD LLC
0005  *  Written by Morris Jette and David Bigagli (SchedMD LLC)
0006  *
0007  *  This file is part of Slurm, a resource management program.
0008  *  For details, see <https://slurm.schedmd.com/>.
0009  *  Please also read the included file: DISCLAIMER.
0010  *
0011  *  Slurm is free software; you can redistribute it and/or modify it under
0012  *  the terms of the GNU General Public License as published by the Free
0013  *  Software Foundation; either version 2 of the License, or (at your option)
0014  *  any later version.
0015  *
0016  *  In addition, as a special exception, the copyright holders give permission
0017  *  to link the code of portions of this program with the OpenSSL library under
0018  *  certain conditions as described in each individual source file, and
0019  *  distribute linked combinations including the two. You must obey the GNU
0020  *  General Public License in all respects for all of the code used other than
0021  *  OpenSSL. If you modify file(s) with this exception, you may extend this
0022  *  exception to your version of the file(s), but you are not obligated to do
0023  *  so. If you do not wish to do so, delete this exception statement from your
0024  *  version.  If you delete this exception statement from all source files in
0025  *  the program, then also delete it here.
0026  *
0027  *  Slurm is distributed in the hope that it will be useful, but WITHOUT ANY
0028  *  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
0029  *  FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
0030  *  details.
0031  *
0032  *  You should have received a copy of the GNU General Public License along
0033  *  with Slurm; if not, write to the Free Software Foundation, Inc.,
0034  *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA.
0035 \*****************************************************************************/
0036 
0037 #ifndef _HAVE_SMD_NS_H
0038 #define _HAVE_SMD_NS_H
0039 
0040 #include <arpa/inet.h>
0041 #include <assert.h>
0042 #include <ctype.h>
0043 #include <errno.h>
0044 #include <getopt.h>
0045 #include <inttypes.h>
0046 #include <netdb.h>
0047 #include <netinet/in.h>
0048 #include <poll.h>
0049 #include <pthread.h>
0050 #include <stdarg.h>
0051 #include <stdbool.h>
0052 #include <stdio.h>
0053 #include <stdlib.h>
0054 #include <string.h>
0055 #include <sys/param.h>
0056 #include <sys/socket.h>
0057 #include <sys/stat.h>
0058 #include <sys/types.h>
0059 #include <sys/time.h>
0060 #include <sys/wait.h>
0061 #include <time.h>
0062 #include <unistd.h>
0063 
0064 /* Faulty can be in state FAILED or FAILING
0065  * these flags tell the controller which one
0066  * the caller is interested in.
0067  */
0068 #define FAILED_NODES   (1 << 1)
0069 #define FAILING_NODES  (1 << 2)
0070 
0071 /* These are the events sent from slurm to the client that
0072  * has registered for any of these events.
0073  * We use define as user can subscribe to more than one
0074  * events.
0075  */
0076 #define SMD_EVENT_NODE_FAILED  (1 << 1) /* node has failed */
0077 #define SMD_EVENT_NODE_FAILING (1 << 2) /* node failing can be drained */
0078 #define SMD_EVENT_NODE_REPLACE (1 << 3) /* replacement ready */
0079 
0080 #endif  /* _HAVE_SMD_NS_H */