procfdname.c 275 B

123456789101112131415
  1. #include "syscall.h"
  2. void __procfdname(char *buf, unsigned fd)
  3. {
  4. unsigned i, j;
  5. for (i=0; (buf[i] = "/proc/self/fd/"[i]); i++);
  6. if (!fd) {
  7. buf[i] = '0';
  8. buf[i+1] = 0;
  9. return;
  10. }
  11. for (j=fd; j; j/=10, i++);
  12. buf[i] = 0;
  13. for (; fd; fd/=10) buf[--i] = '0' + fd%10;
  14. }