maint: prefer C23-style nullptr
[coreutils.git] / gl / lib / root-dev-ino.c
blobb158c277073767dcaf91d19ed02837ea29f646b6
1 /* root-dev-ino.c -- get the device and inode numbers for '/'.
2 Copyright (C) 2003-2023 Free Software Foundation, Inc.
4 This program is free software: you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation, either version 3 of the License, or
7 (at your option) any later version.
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with this program. If not, see <https://www.gnu.org/licenses/>. */
17 /* Written by Jim Meyering. */
19 #include <config.h>
21 #include "root-dev-ino.h"
23 #include <stdlib.h>
25 /* Call lstat to get the device and inode numbers for '/'.
26 Upon failure, return nullptr. Otherwise, set the members of
27 *ROOT_D_I accordingly and return ROOT_D_I. */
28 struct dev_ino *
29 get_root_dev_ino (struct dev_ino *root_d_i)
31 struct stat statbuf;
32 if (lstat ("/", &statbuf))
33 return nullptr;
34 root_d_i->st_ino = statbuf.st_ino;
35 root_d_i->st_dev = statbuf.st_dev;
36 return root_d_i;