Search
j0ke.net Open Build Service
>
Projects
>
multimedia
>
vcdimager
> vcdimager-0.7.23-strncat.patch
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File vcdimager-0.7.23-strncat.patch of Package vcdimager
Index: vcdimager-0.7.23/frontends/xml/vcd_xml_rip.c =================================================================== --- vcdimager-0.7.23.orig/frontends/xml/vcd_xml_rip.c +++ vcdimager-0.7.23/frontends/xml/vcd_xml_rip.c @@ -158,7 +158,7 @@ _parse_isofs_r (vcdxml_t *p_vcdxml, CdIo char *_name = statbuf->filename; strncpy (_fullname, pathname, sizeof (_fullname)); - strncat (_fullname, _name, sizeof (_fullname)); + strncat (_fullname, _name, sizeof (_fullname)-strlen(_fullname)-1); if (NULL == statbuf) return -1; @@ -177,7 +177,7 @@ _parse_isofs_r (vcdxml_t *p_vcdxml, CdIo _register_file (p_vcdxml, _fullname, statbuf); if (statbuf->type == _STAT_DIR) { - strncat (_fullname, "/", sizeof (_fullname)); + strncat (_fullname, "/", sizeof (_fullname)-strlen(_fullname)-1); if (_parse_isofs_r (p_vcdxml, p_cdio, _fullname)) { return -1; } Index: vcdimager-0.7.23/frontends/cli/vcd-info.c =================================================================== --- vcdimager-0.7.23.orig/frontends/cli/vcd-info.c +++ vcdimager-0.7.23/frontends/cli/vcd-info.c @@ -943,7 +943,7 @@ _dump_fs_recurse (const vcdinfo_obj_t *o snprintf (_fullname, sizeof (_fullname), "%s%s", pathname, _name); - strncat (_fullname, "/", sizeof (_fullname)); + strncat (_fullname, "/", sizeof (_fullname)-strlen(_fullname)-1); if (statbuf->type == _STAT_DIR && strcmp (_name, ".") Index: vcdimager-0.7.23/frontends/xml/vcd_xml_build.c =================================================================== --- vcdimager-0.7.23.orig/frontends/xml/vcd_xml_build.c +++ vcdimager-0.7.23/frontends/xml/vcd_xml_build.c @@ -275,7 +275,7 @@ _do_cl (int argc, const char *argv[]) { char buf[1024] = { 0, }; strncpy (buf, opt_arg, sizeof (buf)); - strncat (buf, ".toc", sizeof (buf)); + strncat (buf, ".toc", sizeof (buf)-strlen(buf)-1); _set_img_opt ("toc", buf); } Index: vcdimager-0.7.23/lib/vcd.c =================================================================== --- vcdimager-0.7.23.orig/lib/vcd.c +++ vcdimager-0.7.23/lib/vcd.c @@ -1682,7 +1682,7 @@ _write_sequence (VcdObj_t *p_obj, int tr track->info->ahdr[i].bitrate / 1024, _mode_str[track->info->ahdr[i].mode]); - strncat (buf2, buf, sizeof(buf2)-i_buf2); + strncat (buf2, buf, sizeof(buf2)-strlen(buf2)-i_buf2-1); i_buf2 += i_buf; }