On Tue, Jan 6, 2009 at 10:32 AM, Hans Petter Selasky <hsela...@c2i.net> wrote: > On Saturday 03 January 2009, Volker wrote: >> On 01/03/09 01:35, Hans Petter Selasky wrote: >> > On Wednesday 31 December 2008, v...@freebsd.org wrote: >> >> Synopsis: [newusb] usbconfig(8) fails with misleading error when run as >> >> a normal user >> >> >> >> Responsible-Changed-From-To: freebsd-bugs->freebsd-usb >> >> Responsible-Changed-By: vwe >> >> Responsible-Changed-When: Wed Dec 31 12:55:52 UTC 2008 >> >> Responsible-Changed-Why: >> >> reassign >> >> >> >> http://www.freebsd.org/cgi/query-pr.cgi?pr=129963 >> > >> > Hi, >> > >> > "usbconfig" will only show USB devices which the user has access to. >> > >> > What should be the correct display message when no devices are accessible >> > due to innsufficient permissions? >> > >> > --HPS >> >> Hans, >> >> what about "access denied" or "insufficient privileges"? >> >> Someone might have a better idea but everything should be better than >> silently refusing to do anything. >> >> Volker > > Is this Ok: > > http://perforce.freebsd.org/chv.cgi?CH=155731 > > --HPS
Eh? I still think that strerror or something along those lines would be more helpful. You could also do if (getuid() != 0) { errx(1, "Cluebat -- you might not be able to read the usb devices if you're not root"); } or... struct stat usb_s; int fd = open(..., O_RDONLY /* blah, blah... */); if (fd == -1) { errx(1, "Does the file -- %s -- exist?", file); } if (fstat(fd, &usb_s) == -1) { errx(1, "Couldn't stat the file: %s", file); } if (!S_IRUSR(usb_s.st_mode) && !S_IRGRP(usb_s.st_mode) && !S_IROTH(usb_s.st_mode)) { errx(1, "File not readable (do you have read permissions?)"); } /* Continue on merry way reading devices; maybe use strerror(3) for more intuitive error messages? */ Thoughts? -Garrett _______________________________________________ freebsd-usb@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-usb To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"