-/* $OpenBSD: ypxfr.c,v 1.13 1997/02/07 09:24:03 deraadt Exp $ */
+/* $OpenBSD: ypxfr.c,v 1.14 1997/02/08 19:58:51 maja Exp $ */
/*
* Copyright (c) 1994 Mats O Jansson <moj@stacken.kth.se>
*/
#ifndef LINT
-static char rcsid[] = "$OpenBSD: ypxfr.c,v 1.13 1997/02/07 09:24:03 deraadt Exp $";
+static char rcsid[] = "$OpenBSD: ypxfr.c,v 1.14 1997/02/08 19:58:51 maja Exp $";
#endif
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <sys/socket.h>
+
+#include <netinet/in.h>
+#include <arpa/inet.h>
+
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
-#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-#include <sys/socket.h>
#include <netdb.h>
#include <rpc/rpc.h>
#include <rpc/xdr.h>
-/* #include <rpcsvc/yp_prot.h> */
#include <rpcsvc/ypclnt.h>
#include <rpcsvc/yp.h>
#include "ypdb.h"
#include "ypdef.h"
-char *progname = "ypxfr";
+extern char *__progname;
DBM *db;
extern bool_t xdr_ypresp_all_seq();
int status,keylen,vallen,*data;
char *keystr,*valstr;
{
- datum key,val;
+ datum key,val;
if (status == 2)
return(0);
char *map;
u_long *lordernum;
{
- char map_path[1024];
+ char map_path[MAXPATHLEN];
char order_key[] = YP_LAST_KEY;
char order[MAX_LAST_LEN+1];
struct stat finfo;
status = YPPUSH_SUCC;
- sprintf(map_path,"%s/%s",YP_DB_PATH,domain);
+ snprintf(map_path, sizeof map_path, "%s/%s",YP_DB_PATH,domain);
if (!((stat(map_path, &finfo) == 0) &&
((finfo.st_mode & S_IFMT) == S_IFDIR))) {
fprintf(stderr, "%s: domain %s not found locally\n",
- progname, domain);
+ __progname, domain);
status = YPPUSH_NODOM;
}
if(status > 0) {
- sprintf(map_path,"%s/%s/%s%s",YP_DB_PATH,domain,map,YPDB_SUFFIX);
+ snprintf(map_path, sizeof map_path, "%s/%s/%s%s",
+ YP_DB_PATH,domain,map,YPDB_SUFFIX);
if(!(stat(map_path, &finfo) == 0)) {
status = YPPUSH_NOMAP;
}
if(status > 0) {
- sprintf(map_path,"%s/%s/%s",YP_DB_PATH,domain,map);
+ snprintf(map_path, sizeof map_path, "%s/%s/%s",
+ YP_DB_PATH,domain,map);
db = ypdb_open(map_path, O_RDONLY, 0444);
if(db == NULL) {
status = YPPUSH_DBM;
char *map;
struct ypall_callback *incallback;
{
- u_long status;
-
- status = yp_all_host(client, domain, map, incallback);
+ (void)yp_all_host(client, domain, map, incallback);
}
DBM *db;
char db_temp[255];
- sprintf(db_temp,"%s/%s/%s",YP_DB_PATH,domain,temp_map);
+ snprintf(db_temp,sizeof db_temp, "%s/%s/%s",
+ YP_DB_PATH,domain,temp_map);
db = ypdb_open(db_temp, O_RDWR|O_CREAT, 0444);
char *map;
char *temp_map;
{
- char db_name[255],db_temp[255];
+ char db_name[MAXPATHLEN],db_temp[MAXPATHLEN];
- sprintf(db_name,"%s/%s/%s%s",YP_DB_PATH,domain,map,YPDB_SUFFIX);
- sprintf(db_temp,"%s/%s/%s%s",YP_DB_PATH,domain,temp_map,YPDB_SUFFIX);
+ snprintf(db_name, sizeof db_name, "%s/%s/%s%s",
+ YP_DB_PATH,domain,map,YPDB_SUFFIX);
+ snprintf(db_temp, sizeof db_temp, "%s/%s/%s%s",
+ YP_DB_PATH,domain,temp_map,YPDB_SUFFIX);
rename(db_temp,db_name);
return YPPUSH_SUCC;
unlink_db(domain,map,temp_map)
char *temp_map;
{
- char db_temp[255];
+ char db_temp[MAXPATHLEN];
- sprintf(db_temp,"%s/%s/%s%s",YP_DB_PATH,domain,temp_map,YPDB_SUFFIX);
+ snprintf(db_temp, sizeof db_temp, "%s/%s/%s%s",
+ YP_DB_PATH,domain,temp_map,YPDB_SUFFIX);
unlink(db_temp);
return YPPUSH_SUCC;
if (usage) {
status = YPPUSH_BADARGS;
- (void)fprintf(stderr,"usage: %s [-cf] [-d domain] [-h host] [-s domain] [-C tid prog ipadd port] mapname\n",progname);
+ (void)fprintf(stderr,"usage: %s [-cf] [-d domain] [-h host] [-s domain] [-C tid prog ipadd port] mapname\n",__progname);
}
if (status > 0) {
}
if (status == YPPUSH_SUCC) {
- int fd;
/* Create temporary db */
- fd = mkstemp(mapname);
- if (fd == -1)
- status = YPPUSH_DBM;
- else
- close(fd);
+ mktemp(mapname);
if (status > 0) {
db = create_db(domain,map,mapname);