1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
[[!meta copyright="Copyright © 2009, 2010, 2013 Free Software Foundation,
Inc."]]
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
is included in the section entitled [[GNU Free Documentation
License|/fdl]]."]]"""]]
[[!tag open_issue_glibc open_issue_hurd]]
# IRC, freenode, #hurd, 2009-08-25
<cfhammar> also I fixed (what I think is) a bug in
hurd_file_name_lookup_retry when opening FDs with FS_RETRY_MAGIC
<cfhammar> it didn't actually reopen the FD, rather it just (effectively)
duped it
<scolobb> cfhammar: That's great! I think I had some problems because of
not being able to truly reopen a port to a file.
<antrik> cfhammar: what is the difference, and why do you consider it a
bug?...
<cfhammar> antrik: for one thing you can't change open modes, and it
doesn't reset the file cursor
<cfhammar> (which I actually needed, though I could have done it manually)
<cfhammar> antrik: and also it isn't consistant with linux
<cfhammar> you can trigger the bug from the shell: cat /dev/fd/3 3>>
/tmp/foo
<antrik> cfhammar: I can't say that I understand the test case... but I can
at least confirm that it behaves differently on Hurd and on Linux :-)
## 2013-02-17
GNU/Linux:
$ cat /dev/fd/3 3>> /tmp/foo
$ ls -l /tmp/foo
-rw-rw-r-- 1 thomas thomas 0 Feb 17 12:01 /tmp/foo
GNU/Hurd:
$ cat /dev/fd/3 3>> /tmp/foo
cat: /dev/fd/3: Bad file descriptor
|