FileCloser
using ::BPrivate::FileCloser;
FileCloser attrFile(fdopen(attrFD, "r"));
FileCloser tty;
FileCloser file(fopen(kPasswdFile, "r"));
FileCloser file(fopen(kGroupFile, "r"));
FileCloser file(fopen(kShadowPwdFile, "r"));
FileCloser passwdFile(fopen(kPasswdFile, "w"));
FileCloser shadowFile(fopen(kShadowPwdFile, "w"));
FileCloser groupFile(fopen(kGroupFile, "w"));
FileCloser input(fopen(filename, "rb"));