static int rpmfcHelper(rpmfc fc, unsigned char deptype, const char * nsdep)
{
const char * fn = fc->fn[fc->ix];
- char buf[BUFSIZ];
+ char *buf = NULL;
StringBuf sb_stdout = NULL;
StringBuf sb_stdin;
const char *av[2];
case 'P':
if (fc->skipProv)
return 0;
- xx = snprintf(buf, sizeof(buf), "%%{?__%s_provides}", nsdep);
+ rasprintf(&buf, "%%{?__%s_provides}", nsdep);
depsp = &fc->provides;
dsContext = RPMSENSE_FIND_PROVIDES;
tagN = RPMTAG_PROVIDENAME;
case 'R':
if (fc->skipReq)
return 0;
- xx = snprintf(buf, sizeof(buf), "%%{?__%s_requires}", nsdep);
+ rasprintf(&buf, "%%{?__%s_requires}", nsdep);
depsp = &fc->requires;
dsContext = RPMSENSE_FIND_REQUIRES;
tagN = RPMTAG_REQUIRENAME;
break;
}
- buf[sizeof(buf)-1] = '\0';
av[0] = buf;
av[1] = NULL;
pav = argvFree(pav);
}
sb_stdout = freeStringBuf(sb_stdout);
+ free(buf);
return 0;
}
rpm_mode_t * fmode;
int ac = rpmfiFC(fi);
const void ** p;
- char buf[BUFSIZ];
+ char *buf = NULL;
const char * N;
const char * EVR;
int genConfigDeps;
assert(N != NULL);
EVR = rpmdsEVR(pkg->ds);
assert(EVR != NULL);
- sprintf(buf, "config(%s)", N);
+ rasprintf(&buf, "config(%s)", N);
ds = rpmdsSingle(RPMTAG_PROVIDENAME, buf, EVR,
(RPMSENSE_EQUAL|RPMSENSE_CONFIG));
+ free(buf);
xx = rpmdsMerge(&fc->provides, ds);
ds = rpmdsFree(ds);
}
assert(N != NULL);
EVR = rpmdsEVR(pkg->ds);
assert(EVR != NULL);
- sprintf(buf, "config(%s)", N);
+ rasprintf(&buf, "config(%s)", N);
ds = rpmdsSingle(RPMTAG_REQUIRENAME, buf, EVR,
(RPMSENSE_EQUAL|RPMSENSE_CONFIG));
+ free(buf);
xx = rpmdsMerge(&fc->requires, ds);
ds = rpmdsFree(ds);
}
printDeps(pkg->header);
if (fc != NULL && _rpmfc_debug) {
-char msg[BUFSIZ];
-sprintf(msg, "final: files %d cdict[%d] %d%% ddictx[%d]", fc->nfiles, argvCount(fc->cdict), ((100 * fc->fknown)/fc->nfiles), argiCount(fc->ddictx));
+char *msg = NULL;
+rasprintf(&msg, "final: files %d cdict[%d] %d%% ddictx[%d]", fc->nfiles, argvCount(fc->cdict), ((100 * fc->fknown)/fc->nfiles), argiCount(fc->ddictx));
rpmfcPrint(msg, fc, NULL);
+free(msg);
}
/* Clean up. */