static void get_uevent_info(struct media_device_entry *md_ptr, char *dname)
{
FILE *fd;
- char file[560], *name, *p;
+ char file[PATH_MAX], *name, *p;
char s[1024];
- sprintf(file, "%s/%s/uevent", dname, md_ptr->node);
+ snprintf(file, PATH_MAX, "%s/%s/uevent", dname, md_ptr->node);
fd = fopen(file, "r");
if (!fd)
return;
{
DIR *dir;
struct dirent *entry;
- char dname[512];
- char fname[512];
- char link[1024];
+ char dname[PATH_MAX];
+ char fname[PATH_MAX];
+ char link[PATH_MAX];
char virt_dev[60];
int err = -2;
struct media_device_entry *md_ptr = NULL;
char *p, *device;
static int virtual = 0;
- sprintf(dname, "/sys/class/%s", class);
+ snprintf(dname, PATH_MAX, "/sys/class/%s", class);
dir = opendir(dname);
if (!dir) {
perror(dname);
return 0;
}
for (entry = readdir(dir); entry; entry = readdir(dir)) {
- sprintf(fname, "%s/%s", dname, entry->d_name);
+ snprintf(fname, PATH_MAX, "%s/%s", dname, entry->d_name);
- size = readlink(fname, link, sizeof(link));
+ size = readlink(fname, link, PATH_MAX);
if (size > 0) {
link[size] = '\0';