Two more cases of asprintf(3) replacing malloc(3) + sprintf(3).

git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@233 185d5e19-27fe-0310-9dcf-9bff6b9f3609
This commit is contained in:
Dag-Erling Smørgrav 2003-05-24 19:47:00 +00:00
parent 570d0c7751
commit 7f62c5701c
2 changed files with 4 additions and 6 deletions

View File

@ -31,7 +31,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_set_option.c#10 $
* $P4: //depot/projects/openpam/lib/openpam_set_option.c#11 $
*/
#include <sys/param.h>
@ -82,9 +82,8 @@ openpam_set_option(pam_handle_t *pamh,
cur->optv[i] = NULL;
RETURNC(PAM_SUCCESS);
}
if ((opt = malloc(len + strlen(value) + 2)) == NULL)
if (asprintf(&opt, "%.*s=%s", (int)len, option, value) < 0)
RETURNC(PAM_BUF_ERR);
sprintf(opt, "%.*s=%s", (int)len, option, value);
if (i == cur->optc) {
/* add */
optv = realloc(cur->optv, sizeof(char *) * (cur->optc + 2));

View File

@ -31,7 +31,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/pam_setenv.c#9 $
* $P4: //depot/projects/openpam/lib/pam_setenv.c#10 $
*/
#include <stdlib.h>
@ -71,9 +71,8 @@ pam_setenv(pam_handle_t *pamh,
RETURNC(PAM_SUCCESS);
/* set it... */
if ((env = malloc(strlen(name) + strlen(value) + 2)) == NULL)
if (asprintf(&env, "%s=%s", name, value) < 0)
RETURNC(PAM_BUF_ERR);
sprintf(env, "%s=%s", name, value);
r = pam_putenv(pamh, env);
FREE(env);
RETURNC(r);