|
|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T p
Length: 2253 (0x8cd)
Types: TextFile
Names: »prm2txt.c«
└─⟦2d1937cfd⟧ Bits:30007241 EUUGD22: P.P 5.0
└─⟦dc59850a2⟧ »EurOpenD22/pp5.0/pp-5.tar.Z«
└─⟦e5a54fb17⟧
└─⟦this⟧ »pp-5.0/Lib/pp/prm2txt.c«
/* tx_prm.c: handles the MessageManagementParameter structures,
see manaul page QUEUE (5).
*/
# ifndef lint
static char Rcsid[] = "@(#)$Header: /cs/research/pp/hubris/pp-beta/Lib/pp/RCS/prm2txt.c,v 5.0 90/09/20 16:11:22 pp Exp Locker: pp $";
# endif
/*
* $Header: /cs/research/pp/hubris/pp-beta/Lib/pp/RCS/prm2txt.c,v 5.0 90/09/20 16:11:22 pp Exp Locker: pp $
*
* $Log: prm2txt.c,v $
* Revision 5.0 90/09/20 16:11:22 pp
* rcsforce : 5.0 public release
*
*/
#include "util.h"
#include <isode/cmd_srch.h>
#include "prm.h"
#include "tb_prm.h"
extern void genreset ();
extern void argv2fp ();
extern CMD_TABLE
prmtbl_ln [/* message-management-parameters */],
prmtbl_opts [/* options */];
/* ------------------- Memory -> Text File ------------------------------ */
static void PRM_opts2txt ();
int prm2txt (fp, pp) /* MessageManagementParameters -> Txt */
FILE *fp;
struct prm_vars *pp;
{
extern char *int2txt ();
char *argv[100];
int argc;
genreset ();
PP_DBG (("Lib/pp/prm2txt()"));
if (pp->prm_logfile != NULLCP) {
argv[0] = rcmd_srch (PRM_LOGFILE, prmtbl_ln);
argv[1] = pp -> prm_logfile;
argv[2] = NULLCP;
(void) argv2fp (fp, argv);
}
if (pp->prm_loglevel != NULL) {
argv[0] = rcmd_srch (PRM_LOGLEVEL, prmtbl_ln);
argv[1] = int2txt (pp->prm_loglevel);
argv[2] = NULLCP;
(void) argv2fp (fp, argv);
}
if (pp->prm_opts != NULL) {
argv[0] = rcmd_srch (PRM_OPTS, prmtbl_ln);
argc = 1;
PRM_opts2txt (pp->prm_opts, argv, &argc);
argv[argc] = NULLCP;
(void) argv2fp (fp, argv);
}
if (pp -> prm_passwd != NULL) {
argv[0] = rcmd_srch (PRM_PASSWD, prmtbl_ln);
argv[1] = pp -> prm_passwd;
argv[2] = NULLCP;
(void) argv2fp (fp, argv);
}
(void) fprintf (fp, "%s\n", rcmd_srch (PRM_END, prmtbl_ln));
(void) fflush (fp);
return (ferror (fp) ? NOTOK : OK);
}
static void PRM_opts2txt (options, argv, argcp) /* Param options -> Txt */
int options;
char *argv[];
int *argcp;
{
int i, narg= *argcp;
PP_DBG (("Lib/pp/PRM_opts2txt(%d)", options));
for (i=0; i < PRM_OPTS_TOTAL; i++)
if (options & (1<<i))
argv[narg++] = rcmd_srch (1<<i, prmtbl_opts);
argv[narg] = 0;
*argcp = narg;
}