David Wright wrote: > Because both tests are run by hand, that does make it easier to strace > what's going on in more detail than the debug output. For example, the > open's flags are listed.
I forgot to mention that home is actually a link to home-lisa which is the mount point for the NFS share. I now used strace writev(2, [{iov_base="obexd[23074]: PUT(0x2), <unknown"..., iov_len=39}, {iov_base="\n", iov_len=1}], 2) = 40 sendto(3, "<31>Nov 5 18:04:33 obexd[23074]"..., 59, MSG_NOSIGNAL, NULL, 0) = 59 openat(AT_FDCWD, "/home/user/Downloads/20211105_090338.jpg", O_WRONLY O_CREAT|O_TRUNC, 0600) = 8 fstat(8, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0 lstat("/home", {st_mode=S_IFLNK|0777, st_size=10, ...}) = 0 readlink("/home", "home-lisa/", 4095) = 10 lstat("/home-lisa", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat("/home-lisa/user", {st_mode=S_IFDIR|0755, st_size=20480, ...}) = 0 lstat("/home-lisa/user/Downloads", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 lstat("/home-lisa/user/Downloads/20211105_090338.jpg", {st_mode=S_IFREG 0600, st_size=0, ...}) = 0 close(8) = 0 getpid() = 23074 writev(2, [{iov_base="obexd[23074]: open(/home/user"..., iov_len=92}, {iov_base="\n", iov_len=1}], 2) = 93 sendto(3, "<27>Nov 5 18:04:33 obexd[23074]"..., 112, MSG_NOSIGNAL, NULL, 0) = 112 getpid() = 23074 writev(2, [{iov_base="obexd[23074]: PUT(0x2), Forbidde"..., iov_len=39}, {iov_base="\n", iov_len=1}], 2) = 40 so you see it resolves the link, but then fails with Forbidden. Now I conducted the same test after createing a symlink to the local directory (thus exclude NFS as root for the problem) The result is the same sendto(3, "<31>Nov 5 18:22:28 obexd[23364]"..., 59, MSG_NOSIGNAL, NULL, 0) = 59 openat(AT_FDCWD, "/data/local/Downloads.test/20211105_090338.jpg", O_WRONLY O_CREAT|O_TRUNC, 0600) = 8 fstat(8, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0 lstat("/data", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat("/data/local", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat("/data/local/Downloads.test", {st_mode=S_IFLNK|0777, st_size=10, ...}) = 0 readlink("/data/local/Downloads.test", "Downloads/", 4095) = 10 lstat("/data/local/Downloads", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 lstat("/data/local/Downloads/20211105_090338.jpg", {st_mode=S_IFREG|0600, st_size=0, ...}) = 0 close(8) = 0 getpid() = 23364 writev(2, [{iov_base="obexd[23364]: open(/data/local/D"..., iov_len=95}, {iov_base="\n", iov_len=1}], 2) = 96 sendto(3, "<27>Nov 5 18:22:28 obexd[23364]"..., 115, MSG_NOSIGNAL, NULL, 0) = 115 getpid() = 23364 writev(2, [{iov_base="obexd[23364]: PUT(0x2), Forbidde"..., iov_len=39}, {iov_base="\n", iov_len=1}], 2) = 40 sendto(3, "<31>Nov 5 18:22:28 obexd[23364]"..., 59, MSG_NOSIGNAL, NULL, 0) = 59 Conclusion: the problem is related to the directory link in the path and to me it looks like a problem in obexd How do you see this? -- FCD6 3719 0FFB F1BF 38EA 4727 5348 5F1F DCFE BCB0