ebiederm@xxxxxxxxxxxx (Eric W. Biederman) writes: > "Michael Kerrisk (man-pages)" <mtk.manpages@xxxxxxxxx> writes: > >> Hi Eric, >> >> On 25 January 2017 at 14:58, Eric W. Biederman <ebiederm@xxxxxxxxxxxx> wrote: >>> "Michael Kerrisk (man-pages)" <mtk.manpages@xxxxxxxxx> writes: >>> >>>> I would like to write code that discovers the namespace setup on a live >>>> system. The NS_GET_PARENT and NS_GET_USERNS ioctl() operations added in >>>> Linux 4.9 provide much of what I want, but there are still a couple of >>>> small pieces missing. Those pieces are added with this patch series. >>> >>> So it looks like the -EOVERFLOW change broke your example program. >>> Causing it to abort if -EOVERFLOW is hit. Do we really want to return >>> -EOVERFLOW? Or do you want to fix your program? >> >> Bother! Yes, I should have kept the example program in sync. (I >> overlooked that it was not any more in sync.) >> >> So, I want to make sure I understand correctly, before I aswer your >> question. Suppose we have >> >> 1. Outer namespace owned by UID 0 >> 2. Inner namespace owned by UID 1000 >> 3. A UID mapping in the inner namespace that maps '0 1000 1' >> 4. A processs, X, in the outer namespace with UID 0 (and all caps). >> >> That's the case you're meaning, right? > > I think so I just noticed you did not handle -EOVERFLOW in > the one NS_GET_OWNER_UID call. > >> So, UID 0 doesn't have a >> mapping into the inner namespace, but does have all capabilities in >> that inner namespace, right? > > That is correct. My concern is that the difference between returning -EOVERFLOW and overflow_uid is primarily about usability. If you haven't played with the usability I don't trust that we have made the proper trade off. Eric -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html