blob: 196438ee4c9d08eecb108fcb3aaaab42cd4f7bcb [file] [log] [blame]
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00001// SPDX-License-Identifier: GPL-2.0
2/*
3 * usage.c
4 *
5 * Various reporting routines.
6 * Originally copied from GIT source.
7 *
8 * Copyright (C) Linus Torvalds, 2005
9 */
10#include "util.h"
David Brazdil0f672f62019-12-10 10:32:29 +000011#include <stdio.h>
12#include <stdlib.h>
13#include <linux/compiler.h>
Andrew Scullb4b6d4a2019-01-02 15:54:55 +000014
15static __noreturn void usage_builtin(const char *err)
16{
17 fprintf(stderr, "\n Usage: %s\n", err);
18 exit(129);
19}
20
21/* If we are in a dlopen()ed .so write to a global variable would segfault
22 * (ugh), so keep things static. */
23static void (*usage_routine)(const char *err) __noreturn = usage_builtin;
24
25void usage(const char *err)
26{
27 usage_routine(err);
28}