BuildConf/x86 - Add EHCI driver (appears to work)
[tpg/acess2.git] / Usermode / Libraries / libposix.so_src / unistd.c
index 545ef16..f5b330d 100644 (file)
@@ -242,6 +242,7 @@ char *getpass(const char *prompt)
        mode.OutputMode = 0;
        _SysIOCtl(STDIN_FILENO, PTY_IOCTL_SETMODE, &mode);
        fprintf(stderr, "%s", prompt);
+       fflush(stdin);  // clear stdin buffer
        fgets(passbuf, PASS_MAX+1, stdin);
        fprintf(stderr, "\n");
        for( int i = strlen(passbuf); i > 0 && (passbuf[i-1] == '\r' || passbuf[i-1] == '\n'); i -- )
@@ -252,3 +253,25 @@ char *getpass(const char *prompt)
        return passbuf;
 }
 
+char *ttyname(int fd)
+{
+       static char ttyname_buf[32];
+       errno = ttyname_r(fd, ttyname_buf, sizeof(ttyname_buf));
+       if(errno)       return NULL;
+       
+       return ttyname_buf;
+}
+int ttyname_r(int fd, char *buf, size_t buflen)
+{
+        int    type = _SysIOCtl(fd, DRV_IOCTL_TYPE, NULL);
+       if( type == -1 )
+               return errno;
+       if( type != DRV_TYPE_TERMINAL )
+               return ENOTTY;
+
+       _SysIOCtl(fd, PTY_IOCTL_GETID, NULL);   
+
+       _SysDebug("TODO: ttyname_r");
+
+       return ENOTIMPL;
+}

UCC git Repository :: git.ucc.asn.au