btrfs-progs: use PATH_MAX instead of BTRFS_PATH_NAME_MAX

The path bufferes should be PATH_MAX but BTRFS_PATH_NAME_MAX is shorter
due to embedding in 4k aligned structures.

The only reason to use BTRFS_PATH_NAME_MAX is for the respective
structures btrfs_ioctl_vol_args::name.

Signed-off-by: David Sterba <dsterba@suse.cz>
master
David Sterba 2015-06-12 13:18:44 +02:00
parent c55415e4cb
commit 2e151027d2
6 changed files with 15 additions and 14 deletions

View File

@ -829,7 +829,7 @@ static int cmd_show(int argc, char **argv)
/* default, search both kernel and udev */ /* default, search both kernel and udev */
int where = -1; int where = -1;
int type = 0; int type = 0;
char mp[BTRFS_PATH_NAME_MAX + 1]; char mp[PATH_MAX];
char path[PATH_MAX]; char path[PATH_MAX];
__u8 fsid[BTRFS_FSID_SIZE]; __u8 fsid[BTRFS_FSID_SIZE];
char uuid_buf[BTRFS_UUID_UNPARSED_SIZE]; char uuid_buf[BTRFS_UUID_UNPARSED_SIZE];

View File

@ -270,7 +270,7 @@ static int cmd_subvolid_resolve(int argc, char **argv)
int ret; int ret;
int fd = -1; int fd = -1;
u64 subvol_id; u64 subvol_id;
char path[BTRFS_PATH_NAME_MAX + 1]; char path[PATH_MAX];
DIR *dirstream = NULL; DIR *dirstream = NULL;
if (check_argc_exact(argc, 3)) if (check_argc_exact(argc, 3))
@ -293,7 +293,7 @@ static int cmd_subvolid_resolve(int argc, char **argv)
goto out; goto out;
} }
path[BTRFS_PATH_NAME_MAX] = '\0'; path[PATH_MAX] = '\0';
printf("%s\n", path); printf("%s\n", path);
out: out:

View File

@ -979,7 +979,7 @@ static int do_receive(struct btrfs_receive *r, const char *tomnt,
goto out; goto out;
} }
root_subvol_path = malloc(BTRFS_PATH_NAME_MAX); root_subvol_path = malloc(PATH_MAX);
if (!root_subvol_path) { if (!root_subvol_path) {
ret = -ENOMEM; ret = -ENOMEM;
fprintf(stderr, "ERROR: couldn't allocate buffer for the root " fprintf(stderr, "ERROR: couldn't allocate buffer for the root "
@ -988,7 +988,7 @@ static int do_receive(struct btrfs_receive *r, const char *tomnt,
} }
ret = btrfs_subvolid_resolve(r->mnt_fd, root_subvol_path, ret = btrfs_subvolid_resolve(r->mnt_fd, root_subvol_path,
BTRFS_PATH_NAME_MAX, subvol_id); PATH_MAX, subvol_id);
if (ret) { if (ret) {
fprintf(stderr, "ERROR: couldn't resolve our subvol path\n"); fprintf(stderr, "ERROR: couldn't resolve our subvol path\n");
goto out; goto out;

View File

@ -390,7 +390,7 @@ static int scrub_open_file(const char *datafile, int m)
static int scrub_open_file_r(const char *fn_base, const char *fn_local) static int scrub_open_file_r(const char *fn_base, const char *fn_local)
{ {
int ret; int ret;
char datafile[BTRFS_PATH_NAME_MAX + 1]; char datafile[PATH_MAX];
ret = scrub_datafile(fn_base, fn_local, NULL, ret = scrub_datafile(fn_base, fn_local, NULL,
datafile, sizeof(datafile)); datafile, sizeof(datafile));
if (ret < 0) if (ret < 0)
@ -402,7 +402,7 @@ static int scrub_open_file_w(const char *fn_base, const char *fn_local,
const char *tmp) const char *tmp)
{ {
int ret; int ret;
char datafile[BTRFS_PATH_NAME_MAX + 1]; char datafile[PATH_MAX];
ret = scrub_datafile(fn_base, fn_local, tmp, ret = scrub_datafile(fn_base, fn_local, tmp,
datafile, sizeof(datafile)); datafile, sizeof(datafile));
if (ret < 0) if (ret < 0)
@ -414,8 +414,8 @@ static int scrub_rename_file(const char *fn_base, const char *fn_local,
const char *tmp) const char *tmp)
{ {
int ret; int ret;
char datafile_old[BTRFS_PATH_NAME_MAX + 1]; char datafile_old[PATH_MAX];
char datafile_new[BTRFS_PATH_NAME_MAX + 1]; char datafile_new[PATH_MAX];
ret = scrub_datafile(fn_base, fn_local, tmp, ret = scrub_datafile(fn_base, fn_local, tmp,
datafile_old, sizeof(datafile_old)); datafile_old, sizeof(datafile_old));
if (ret < 0) if (ret < 0)
@ -1128,7 +1128,7 @@ static int scrub_start(int argc, char **argv, int resume)
struct scrub_file_record *last_scrub = NULL; struct scrub_file_record *last_scrub = NULL;
char *datafile = strdup(SCRUB_DATA_FILE); char *datafile = strdup(SCRUB_DATA_FILE);
char fsid[BTRFS_UUID_UNPARSED_SIZE]; char fsid[BTRFS_UUID_UNPARSED_SIZE];
char sock_path[BTRFS_PATH_NAME_MAX + 1] = ""; char sock_path[PATH_MAX] = "";
struct scrub_progress_cycle spc; struct scrub_progress_cycle spc;
pthread_mutex_t spc_write_mutex = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_t spc_write_mutex = PTHREAD_MUTEX_INITIALIZER;
void *terr; void *terr;

View File

@ -20,6 +20,7 @@
#include <fcntl.h> #include <fcntl.h>
#include <sys/ioctl.h> #include <sys/ioctl.h>
#include <uuid/uuid.h> #include <uuid/uuid.h>
#include <limits.h>
#include "ctree.h" #include "ctree.h"
#include "send-utils.h" #include "send-utils.h"
@ -481,9 +482,9 @@ struct subvol_info *subvol_uuid_search(struct subvol_uuid_search *s,
if (type == subvol_search_by_path) { if (type == subvol_search_by_path) {
info->path = strdup(path); info->path = strdup(path);
} else { } else {
info->path = malloc(BTRFS_PATH_NAME_MAX); info->path = malloc(PATH_MAX);
ret = btrfs_subvolid_resolve(s->mnt_fd, info->path, ret = btrfs_subvolid_resolve(s->mnt_fd, info->path,
BTRFS_PATH_NAME_MAX, root_id); PATH_MAX, root_id);
} }
out: out:

View File

@ -1060,7 +1060,7 @@ out:
*/ */
int open_path_or_dev_mnt(const char *path, DIR **dirstream) int open_path_or_dev_mnt(const char *path, DIR **dirstream)
{ {
char mp[BTRFS_PATH_NAME_MAX + 1]; char mp[PATH_MAX];
int fdmnt; int fdmnt;
if (is_block_device(path)) { if (is_block_device(path)) {
@ -2056,7 +2056,7 @@ int get_fs_info(char *path, struct btrfs_ioctl_fs_info_args *fi_args,
struct btrfs_fs_devices *fs_devices_mnt = NULL; struct btrfs_fs_devices *fs_devices_mnt = NULL;
struct btrfs_ioctl_dev_info_args *di_args; struct btrfs_ioctl_dev_info_args *di_args;
struct btrfs_ioctl_dev_info_args tmp; struct btrfs_ioctl_dev_info_args tmp;
char mp[BTRFS_PATH_NAME_MAX + 1]; char mp[PATH_MAX];
DIR *dirstream = NULL; DIR *dirstream = NULL;
memset(fi_args, 0, sizeof(*fi_args)); memset(fi_args, 0, sizeof(*fi_args));