c99 -- ugh, this is HARD
This commit is contained in:
parent
c969fe0c58
commit
ade43a692b
25
proc/sig.c
25
proc/sig.c
@ -102,11 +102,8 @@ static int compare_signal_names(const void *a, const void *b){
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* return -1 on failure */
|
/* return -1 on failure */
|
||||||
int signal_name_to_number(char *name){
|
int signal_name_to_number(const char *restrict name){
|
||||||
const mapstruct *ptr;
|
|
||||||
mapstruct ms;
|
|
||||||
long val;
|
long val;
|
||||||
char *endp;
|
|
||||||
int offset;
|
int offset;
|
||||||
|
|
||||||
/* clean up name */
|
/* clean up name */
|
||||||
@ -117,11 +114,17 @@ int signal_name_to_number(char *name){
|
|||||||
if(!strcasecmp(name,"IOT")) return SIGABRT;
|
if(!strcasecmp(name,"IOT")) return SIGABRT;
|
||||||
|
|
||||||
/* search the table */
|
/* search the table */
|
||||||
ms.name = name;
|
{
|
||||||
ptr = bsearch(&ms, sigtable, number_of_signals,
|
const mapstruct ms = {name,0};
|
||||||
sizeof(mapstruct), compare_signal_names
|
const mapstruct *restrict const ptr = bsearch(
|
||||||
|
&ms,
|
||||||
|
sigtable,
|
||||||
|
number_of_signals,
|
||||||
|
sizeof(mapstruct),
|
||||||
|
compare_signal_names
|
||||||
);
|
);
|
||||||
if(ptr) return ptr->num;
|
if(ptr) return ptr->num;
|
||||||
|
}
|
||||||
|
|
||||||
if(!strcasecmp(name,"RTMIN")) return SIGRTMIN;
|
if(!strcasecmp(name,"RTMIN")) return SIGRTMIN;
|
||||||
if(!strcasecmp(name,"EXIT")) return 0;
|
if(!strcasecmp(name,"EXIT")) return 0;
|
||||||
@ -134,8 +137,11 @@ int signal_name_to_number(char *name){
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* not found, so try as a number */
|
/* not found, so try as a number */
|
||||||
|
{
|
||||||
|
char *endp;
|
||||||
val = strtol(name,&endp,10);
|
val = strtol(name,&endp,10);
|
||||||
if(*endp || endp==name) return -1; /* not valid */
|
if(*endp || endp==name) return -1; /* not valid */
|
||||||
|
}
|
||||||
if(val+SIGRTMIN>127) return -1; /* not valid */
|
if(val+SIGRTMIN>127) return -1; /* not valid */
|
||||||
return val+offset;
|
return val+offset;
|
||||||
}
|
}
|
||||||
@ -153,7 +159,7 @@ static const char *signal_number_to_name(int signo){
|
|||||||
return buf;
|
return buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
int print_given_signals(int argc, char *argv[], int max_line){
|
int print_given_signals(int argc, const char **argv, int max_line){
|
||||||
char buf[1280]; /* 128 signals, "RTMIN+xx" is largest */
|
char buf[1280]; /* 128 signals, "RTMIN+xx" is largest */
|
||||||
int ret = 0; /* to be used as exit code by caller */
|
int ret = 0; /* to be used as exit code by caller */
|
||||||
int place = 0; /* position on this line */
|
int place = 0; /* position on this line */
|
||||||
@ -161,8 +167,7 @@ int print_given_signals(int argc, char *argv[], int max_line){
|
|||||||
if(argc > 128) return 1;
|
if(argc > 128) return 1;
|
||||||
while(argc--){
|
while(argc--){
|
||||||
char tmpbuf[16];
|
char tmpbuf[16];
|
||||||
char *txt; /* convenient alias */
|
const char *restrict const txt = *argv;
|
||||||
txt = *argv;
|
|
||||||
if(*txt >= '0' && *txt <= '9'){
|
if(*txt >= '0' && *txt <= '9'){
|
||||||
long val;
|
long val;
|
||||||
char *endp;
|
char *endp;
|
||||||
|
@ -9,10 +9,12 @@
|
|||||||
* GNU Library General Public License for more details.
|
* GNU Library General Public License for more details.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* return -1 on failure */
|
#include "procps.h"
|
||||||
extern int signal_name_to_number(char *name);
|
|
||||||
|
|
||||||
extern int print_given_signals(int argc, char *argv[], int max_line);
|
/* return -1 on failure */
|
||||||
|
extern int signal_name_to_number(const char *restrict name);
|
||||||
|
|
||||||
|
extern int print_given_signals(int argc, const char **argv, int max_line);
|
||||||
|
|
||||||
extern void pretty_print_signals(void);
|
extern void pretty_print_signals(void);
|
||||||
|
|
||||||
|
8
skill.c
8
skill.c
@ -42,7 +42,6 @@ thing##s[thing##_count++] = addme; \
|
|||||||
|
|
||||||
static int my_pid;
|
static int my_pid;
|
||||||
static int saved_argc;
|
static int saved_argc;
|
||||||
static char **saved_argv;
|
|
||||||
|
|
||||||
static int sig_or_pri;
|
static int sig_or_pri;
|
||||||
|
|
||||||
@ -245,7 +244,7 @@ static void kill_usage(void){
|
|||||||
}
|
}
|
||||||
|
|
||||||
/***** kill */
|
/***** kill */
|
||||||
static void kill_main(int argc, const char *restrict argv[]){
|
static void kill_main(int argc, const char *restrict const *restrict argv){
|
||||||
const char *sigptr;
|
const char *sigptr;
|
||||||
int signo = SIGTERM;
|
int signo = SIGTERM;
|
||||||
int exitvalue = 0;
|
int exitvalue = 0;
|
||||||
@ -368,12 +367,12 @@ static void _skillsnice_usage(int line){
|
|||||||
|
|
||||||
/***** common skill/snice argument parsing code */
|
/***** common skill/snice argument parsing code */
|
||||||
#define NO_PRI_VAL ((int)0xdeafbeef)
|
#define NO_PRI_VAL ((int)0xdeafbeef)
|
||||||
static void skillsnice_parse(int argc, char *argv[]){
|
static void skillsnice_parse(int argc, const char *restrict const *restrict argv){
|
||||||
int signo = -1;
|
int signo = -1;
|
||||||
int prino = NO_PRI_VAL;
|
int prino = NO_PRI_VAL;
|
||||||
int force = 0;
|
int force = 0;
|
||||||
int num_found = 0;
|
int num_found = 0;
|
||||||
char *argptr;
|
const char *restrict argptr;
|
||||||
if(argc<2) skillsnice_usage();
|
if(argc<2) skillsnice_usage();
|
||||||
if(argc==2 && argv[1][0]=='-'){
|
if(argc==2 && argv[1][0]=='-'){
|
||||||
if(!strcmp(argv[1],"-L")){
|
if(!strcmp(argv[1],"-L")){
|
||||||
@ -539,7 +538,6 @@ selection_collection:
|
|||||||
int main(int argc, char *argv[]){
|
int main(int argc, char *argv[]){
|
||||||
char *tmpstr;
|
char *tmpstr;
|
||||||
my_pid = getpid();
|
my_pid = getpid();
|
||||||
saved_argv = argv;
|
|
||||||
saved_argc = argc;
|
saved_argc = argc;
|
||||||
if(!argc){
|
if(!argc){
|
||||||
fprintf(stderr,"ERROR: could not determine own name.\n");
|
fprintf(stderr,"ERROR: could not determine own name.\n");
|
||||||
|
1
sysctl.c
1
sysctl.c
@ -26,6 +26,7 @@
|
|||||||
#include <dirent.h>
|
#include <dirent.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
#include "proc/procps.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Additional types we might need.
|
* Additional types we might need.
|
||||||
|
7
top.c
7
top.c
@ -781,7 +781,8 @@ static const char *scale_tics (TICS_t tics, const int width)
|
|||||||
* Handle our own memory stuff without the risk of leaving the
|
* Handle our own memory stuff without the risk of leaving the
|
||||||
* user's terminal in an ugly state should things go sour. */
|
* user's terminal in an ugly state should things go sour. */
|
||||||
|
|
||||||
static void *alloc_c (unsigned numb) MALLOC
|
static void *alloc_c (unsigned numb) MALLOC;
|
||||||
|
static void *alloc_c (unsigned numb)
|
||||||
{
|
{
|
||||||
void * p;
|
void * p;
|
||||||
|
|
||||||
@ -791,8 +792,8 @@ static void *alloc_c (unsigned numb) MALLOC
|
|||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void *alloc_r (void *q, unsigned numb) MALLOC;
|
||||||
static void *alloc_r (void *q, unsigned numb) MALLOC
|
static void *alloc_r (void *q, unsigned numb)
|
||||||
{
|
{
|
||||||
void *p;
|
void *p;
|
||||||
|
|
||||||
|
2
vmstat.c
2
vmstat.c
@ -54,7 +54,7 @@ static void crash(const char *filename) {
|
|||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
static void getrunners(unsigned int *restirct running, unsigned int *restrict blocked) {
|
static void getrunners(unsigned int *restrict running, unsigned int *restrict blocked) {
|
||||||
static struct direct *ent;
|
static struct direct *ent;
|
||||||
DIR *proc;
|
DIR *proc;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user