(retrieve): Got rid of `sprintf'.
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@831 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -819,12 +819,12 @@ retrieve(char *cmd, char *name)
|
|||||||
char *ext;
|
char *ext;
|
||||||
char *cmd;
|
char *cmd;
|
||||||
} cmds[] = {
|
} cmds[] = {
|
||||||
/* XXX -- fix below if %s is not last element */
|
/* XXX - make this more general */
|
||||||
".tar", "/bin/gtar cPf - %s",
|
".tar", "/bin/gtar cPf - ",
|
||||||
".tar.gz", "/bin/gtar zcPf - %s",
|
".tar.gz", "/bin/gtar zcPf - ",
|
||||||
".tar.Z", "/bin/gtar ZcPf - %s",
|
".tar.Z", "/bin/gtar ZcPf - ",
|
||||||
".gz", "/bin/gzip -c %s",
|
".gz", "/bin/gzip -c ",
|
||||||
".Z", "/bin/compress -c %s",
|
".Z", "/bin/compress -c ",
|
||||||
NULL, NULL
|
NULL, NULL
|
||||||
};
|
};
|
||||||
struct cmds *p;
|
struct cmds *p;
|
||||||
@@ -832,9 +832,15 @@ retrieve(char *cmd, char *name)
|
|||||||
char *tail = name + strlen(name) - strlen(p->ext);
|
char *tail = name + strlen(name) - strlen(p->ext);
|
||||||
|
|
||||||
if(strcmp(tail, p->ext) == 0){
|
if(strcmp(tail, p->ext) == 0){
|
||||||
|
strncpy(line, p->cmd, sizeof(line));
|
||||||
|
line[sizeof(line) - 1] = '\0';
|
||||||
|
strncat(line, name, sizeof(line)-strlen(line));
|
||||||
|
line[sizeof(line) - 1] = '\0';
|
||||||
|
line[strlen(line) - strlen(p->ext)] = 0;
|
||||||
|
#if 0
|
||||||
sprintf(line, p->cmd, name);
|
sprintf(line, p->cmd, name);
|
||||||
/* XXX */
|
/* XXX */
|
||||||
line[strlen(name) - strlen(p->ext)] = 0;
|
#endif
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user