readarg.c 281 B

12345678910111213141516171819202122
  1. #include <u.h>
  2. #include <libc.h>
  3. #include "authcmdlib.h"
  4. int
  5. readarg(int fd, char *arg, int len)
  6. {
  7. char buf[1];
  8. int i;
  9. i = 0;
  10. for(;;){
  11. if(read(fd, buf, 1) != 1)
  12. return -1;
  13. if(i < len - 1)
  14. arg[i++] = *buf;
  15. if(*buf == '\0'){
  16. arg[i] = '\0';
  17. return 0;
  18. }
  19. }
  20. }