Slurm API(3)

NAME
slurm_get_errno, slurm_perror, slurm_strerror - Slurm error handling functions

SYNTAX

#include <slurm/slurm_errno.h>

int slurm_get_errno ( );

void slurm_perror (
    char *header
);

char * slurm_strerror (
    int errnum
);

ARGUMENTS

errnum
    A Slurm error code.

header
    A pointer to a string used as a message header for printing along with an error description.

DESCRIPTION

slurm_get_errno Return the error code as set by the Slurm API function executed.

slurm_perror Print to standard error the supplied header followed by a colon followed by a text description of the last Slurm error code generated.

slurm_strerror Given a Slurm error code, return a pointer to a text description of the error's meaning.

RETURN VALUE

slurm_get_errno returns an error code or zero if no error was generated by the last Slurm function call executed. slurm_strerror returns a pointer to a text string, which is empty if no error was generated by the last Slurm function call executed.

EXAMPLE

#include <stdio.h>
#include <slurm/slurm.h>
#include <slurm/slurm_errno.h>

int main (int argc, char *argv[])
{
    /* assume Slurm API function failed here */
    fprintf (stderr, "Slurm function errno = %d\n",
             slurm_get_errno ());
    fprintf (stderr, "Slurm function errno = %d %s\n",
             slurm_get_errno (),
             slurm_strerror (slurm_get_errno ()));
    slurm_perror ("Slurm function");
    exit (1);
}

NOTE
These functions are included in the libslurm library, which must be linked to your process for use (e.g. "cc -lslurm myprog.c").

COPYING
Copyright (C) 2002 The Regents of the University of California. Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER). CODE-OCEC-09-009. All rights reserved.

This file is part of SLURM, a resource management program. For details, see <http://www.schedmd.com/slurmdocs/>.

SLURM is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

SLURM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

SEE ALSO

slurm_allocate_resources(3), slurm_complete_job(3), slurm_complete_job_step(3), slurm_allocation_lookup(3), slurm_free_ctl_conf(3), slurm_free_job_info_msg(3), slurm_free_job_step_create_response_msg(3), slurm_free_node_info(3), slurm_free_partition_info(3), slurm_free_resource_allocation_response_msg(3), slurm_free_submit_response_response_msg(3), slurm_get_job_steps(3), slurm_init_job_desc_msg(3), slurm_init_part_desc_msg(3), slurm_job_step_create(3), slurm_job_will_run(3), slurm_kill_job(3), slurm_kill_job_step(3), slurm_load_ctl_conf(3), slurm_load_jobs(3), slurm_load_node(3), slurm_load_partitions(3), slurm_pid2jobid(3), slurm_reconfigure(3), slurm_shutdown(3), slurm_submit_batch_job(3), slurm_update_job(3), slurm_update_node(3), slurm_update_partition(3)