auto-gid.c

来自「linux下qmail的源码 本人加了一些注释」· C语言 代码 · 共 52 行

C
52
字号
#include <sys/types.h>#include <grp.h>#include "subfd.h"#include "substdio.h"#include "readwrite.h"#include "exit.h"#include "scan.h"#include "fmt.h"char buf1[256];substdio ss1 = SUBSTDIO_FDBUF(write,1,buf1,sizeof(buf1));void outs(s)char *s;{  if (substdio_puts(&ss1,s) == -1) _exit(111);}void main(argc,argv)int argc;char **argv;{  char *name;  char *value;  struct group *gr;  char strnum[FMT_ULONG];  name = argv[1];  if (!name) _exit(100);  value = argv[2];  if (!value) _exit(100);  gr = getgrnam(value);  if (!gr) {    substdio_puts(subfderr,"fatal: unable to find group ");    substdio_puts(subfderr,value);    substdio_puts(subfderr,"\n");    substdio_flush(subfderr);    _exit(111);  }  strnum[fmt_ulong(strnum,(unsigned long) gr->gr_gid)] = 0;  outs("int ");  outs(name);  outs(" = ");  outs(strnum);  outs(";\n");  if (substdio_flush(&ss1) == -1) _exit(111);  _exit(0);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?