From: Sage Weil Date: Sat, 12 Feb 2011 06:57:29 +0000 (-0800) Subject: cfuse: use safe_read and check return value X-Git-Tag: v0.25~128 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=6a800643a6a6c16cf53638f5d6b2630fc5240686;p=ceph.git cfuse: use safe_read and check return value Signed-off-by: Sage Weil --- diff --git a/src/cfuse.cc b/src/cfuse.cc index 236de4adb983..e8ff5694f5a4 100644 --- a/src/cfuse.cc +++ b/src/cfuse.cc @@ -168,16 +168,17 @@ int main(int argc, const char **argv, const char *envp[]) { ::close(fd[1]); int r = -1; - ::read(fd[0], &r, sizeof(r)); - if (r == 0) { + int err = safe_read_exact(fd[0], &r, sizeof(r)); + if (err == 0 && r == 0) { // close stdout, etc. //cout << "success" << std::endl; ::close(0); ::close(1); ::close(2); - } else { + } else if (err) + cerr << "cfuse[" << getpid() << "]: mount failed: " << strerror(-err) << std::endl; + else cerr << "cfuse[" << getpid() << "]: mount failed: " << strerror(-r) << std::endl; - } return r; } }