I thought this might work:
proc fseek(f: File, offset: clong, whence: int): int {.importc: "fseek",
header: "<stdio.h>", tags: [].}
var s1 = readAll(stdin)
discard fseek(stdin, 0, 0)
var s2 = readPasswordFromStdin("\ntest: ")
But turns out, it only works if you don't pipe the input into the first call to readAll (i.e. typed input works, "cat sometextfile.txt | myapp" doesn't.
