From e564d85e628c4c403dd99a49087537408ac00f9d Mon Sep 17 00:00:00 2001 From: Michael Davidsaver Date: Tue, 12 May 2026 18:44:00 -0700 Subject: [PATCH] asDump* quote UAG and HAG entries --- modules/libcom/src/as/asLibRoutines.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/modules/libcom/src/as/asLibRoutines.c b/modules/libcom/src/as/asLibRoutines.c index 089c86797..f2b2f0854 100644 --- a/modules/libcom/src/as/asLibRoutines.c +++ b/modules/libcom/src/as/asLibRoutines.c @@ -20,6 +20,7 @@ #include "epicsStdio.h" #include "dbDefs.h" #include "epicsThread.h" +#include "epicsString.h" #include "cantProceed.h" #include "epicsMutex.h" #include "errlog.h" @@ -656,6 +657,14 @@ next_rule: } return(0); } + +static +void asDumpQuoted(FILE *fp, const char *s) +{ + fprintf(fp, "\""); + (void)epicsStrPrintEscaped(fp, s, strlen(s)); + fprintf(fp, "\""); +} int epicsStdCall asDumpUag(const char *uagname) { @@ -679,7 +688,7 @@ int epicsStdCall asDumpUagFP(FILE *fp,const char *uagname) puagname = (UAGNAME *)ellFirst(&puag->list); if(puagname) fprintf(fp," {"); else fprintf(fp,"\n"); while(puagname) { - fprintf(fp,"%s",puagname->user); + asDumpQuoted(fp, puagname->user); puagname = (UAGNAME *)ellNext(&puagname->node); if(puagname) fprintf(fp,","); else fprintf(fp,"}\n"); } @@ -710,7 +719,7 @@ int epicsStdCall asDumpHagFP(FILE *fp,const char *hagname) phagname = (HAGNAME *)ellFirst(&phag->list); if(phagname) fprintf(fp," {"); else fprintf(fp,"\n"); while(phagname) { - fprintf(fp,"%s",phagname->host); + asDumpQuoted(fp, phagname->host); phagname = (HAGNAME *)ellNext(&phagname->node); if(phagname) fprintf(fp,","); else fprintf(fp,"}\n"); }