From 0a2c0778770778b7ba699d4ff2ddb112de127972 Mon Sep 17 00:00:00 2001 From: Radim Kolar <> Date: Sun, 13 Sep 2009 21:06:32 +0200 Subject: [PATCH] rename glob() function to bsdglob(). Function glob is part of newer linux libc --- ChangeLog | 3 +++ bsd_src/glob.c | 2 +- bsd_src/ls.c | 2 +- clients/SConscript | 20 ++++++++++---------- clients/fcatcmd.c | 2 +- clients/fcdcmd.c | 2 +- clients/fducmd.c | 2 +- clients/ffindcmd.c | 2 +- clients/fgetcmd.c | 4 ++-- clients/fmvcmd.c | 2 +- clients/fprocmd.c | 4 ++-- clients/frmcmd.c | 2 +- clients/frmdircmd.c | 2 +- clients/fstatcmd.c | 4 ++-- include/bsd_extern.h | 2 +- 15 files changed, 29 insertions(+), 26 deletions(-) diff --git a/ChangeLog b/ChangeLog index e4875e1..fe20fc8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -7,6 +7,9 @@ Version NEXT command can handle server strings without \n for quite a long time, so i decided to remove it. It is bad idea to terminate version strings by \n while it is not required by FSP protocol. + glob() function used in FSP clients renamed to bsdglob because it + clashed with glob() functin in newer Linux glibc resulting in + segfaults. Version 2.8.1b25 - 10 Sep 2009 GNU autotools build system was entirely replaced by SCons diff --git a/bsd_src/glob.c b/bsd_src/glob.c index d1e0c54..35e16a4 100644 --- a/bsd_src/glob.c +++ b/bsd_src/glob.c @@ -423,7 +423,7 @@ static void rscan (register char **t, charfunc f) } } -char **glob (register char * v) +char **bsdglob (register char * v) { char agpath[BUFSIZ]; char *agargv[GAVSIZ]; diff --git a/bsd_src/ls.c b/bsd_src/ls.c index 7f71cb7..045cd73 100644 --- a/bsd_src/ls.c +++ b/bsd_src/ls.c @@ -223,7 +223,7 @@ static void doargs (int argc, char ** argv) statworks = 0; for (dircnt = regcnt = 0; *argv; ++argv) { - if(!(av = glob(*argv))) { + if(!(av = bsdglob(*argv))) { av = av2; av2[0] = *argv; av2[1] = 0; diff --git a/clients/SConscript b/clients/SConscript index eea8950..23adcb4 100644 --- a/clients/SConscript +++ b/clients/SConscript @@ -7,23 +7,23 @@ def createMergeSource(basename): f.close() if CLIENTS: - fcatcmd=env.Program(target = 'fcatcmd',source=['fcatcmd.c']+client+common) - fcdcmd=env.Program(target = 'fcdcmd', source=['fcdcmd.c','printpro.c']+client+common) - fducmd=env.Program(target = 'fducmd', source=['fducmd.c']+client+common) + fcatcmd=env.Program(target = 'fcatcmd',source=['fcatcmd.c']+client+common+bsdfsp) + fcdcmd=env.Program(target = 'fcdcmd', source=['fcdcmd.c','printpro.c']+client+common+bsdfsp) + fducmd=env.Program(target = 'fducmd', source=['fducmd.c']+client+common+bsdfsp) ffindcmd=env.Program(target = 'ffindcmd',source=['ffindcmd.c']+client+common+bsdfsp) fget=env.StaticObject('fgetcmd.c', CPPDEFINES='-DCOMMAND_GET') - fgetcmd=env.Program(target = 'fgetcmd',source=fget+client+common) - fgrabcmd=env.Program(target = 'fgrabcmd',source=['fgrabcmd.c']+client+common) + fgetcmd=env.Program(target = 'fgetcmd',source=fget+client+common+bsdfsp) + fgrabcmd=env.Program(target = 'fgrabcmd',source=['fgrabcmd.c']+client+common+bsdfsp) fhostcmd=env.Program(target = 'fhostcmd',source=['fhostcmd.c','fhost.c','fspprof.l']) flscmd=env.Program(target = 'flscmd',source=['flscmd.c']+client+common+bsdfsp) fmkdircmd=env.Program(target = 'fmkdir',source=['fmkdir.c']+client+common) - fprocmd=env.Program(target = 'fprocmd',source=['fprocmd.c','printpro.c']+client+common) + fprocmd=env.Program(target = 'fprocmd',source=['fprocmd.c','printpro.c']+client+common+bsdfsp) fputcmd=env.Program(target = 'fput',source=['fput.c']+client+common) - frmcmd=env.Program(target = 'frmcmd',source=['frmcmd.c']+client+common) - frmdircmd=env.Program(target = 'frmdircmd',source=['frmdircmd.c']+client+common) + frmcmd=env.Program(target = 'frmcmd',source=['frmcmd.c']+client+common+bsdfsp) + frmdircmd=env.Program(target = 'frmdircmd',source=['frmdircmd.c']+client+common+bsdfsp) fvercmd=env.Program(target = 'fver',source=['fver.c']+client+common) - fstatcmd=env.Program(target = 'fstatcmd',source=['fstatcmd.c']+client+common) - fmvcmd=env.Program(target = 'fmvcmd',source=['fmvcmd.c']+client+common) + fstatcmd=env.Program(target = 'fstatcmd',source=['fstatcmd.c']+client+common+bsdfsp) + fmvcmd=env.Program(target = 'fmvcmd',source=['fmvcmd.c']+client+common+bsdfsp) fbyecmd=env.Program(target = 'fbye',source=['fbye.c']+client+common) fspsites=env.StaticObject('fspsites.l', LEXFLAGS='-Psite') fsetupcmd=env.Program(target = 'fsetupcmd',source=['fsetupcmd.c',fspsites,'fhost.c']+client+common) diff --git a/clients/fcatcmd.c b/clients/fcatcmd.c index 15fd9b0..537b74c 100644 --- a/clients/fcatcmd.c +++ b/clients/fcatcmd.c @@ -38,7 +38,7 @@ int main (int argc, char ** argv) signal(SIGHUP,dont_die); while(*++argv) { - av = glob(*argv); + av = bsdglob(*argv); if(av) while(*av) { diff --git a/clients/fcdcmd.c b/clients/fcdcmd.c index ebe85ae..1841d4d 100644 --- a/clients/fcdcmd.c +++ b/clients/fcdcmd.c @@ -49,7 +49,7 @@ int main (int argc, char ** argv) f_cd(np); puts(np); } else { - if(!(av = glob(argv[1]))) { + if(!(av = bsdglob(argv[1]))) { av = av2; av2[0] = *argv; av2[1] = 0; diff --git a/clients/fducmd.c b/clients/fducmd.c index f0ba6a2..5fb86e5 100644 --- a/clients/fducmd.c +++ b/clients/fducmd.c @@ -95,7 +95,7 @@ int main (int argc, char ** argv) } for ( ; argv[optind]; optind++) { - if (!(files = glob(argv[optind]))) { + if (!(files = bsdglob(argv[optind]))) { files = singlefile; singlefile[0] = argv[optind]; singlefile[1] = 0; diff --git a/clients/ffindcmd.c b/clients/ffindcmd.c index c20c262..6d76ebd 100644 --- a/clients/ffindcmd.c +++ b/clients/ffindcmd.c @@ -100,7 +100,7 @@ int main (int argc, char ** argv) /* Execute plan for all file lists */ while (*argv) { if (argv >= p) break; - if (!(files = glob(*argv))) { + if (!(files = bsdglob(*argv))) { files = singlefile; singlefile[0] = *argv; singlefile[1] = 0; diff --git a/clients/fgetcmd.c b/clients/fgetcmd.c index f655138..5663391 100644 --- a/clients/fgetcmd.c +++ b/clients/fgetcmd.c @@ -265,7 +265,7 @@ int main (int argc, char ** argv) if(argc > optind) { for( ; argc>optind ; optind++) { - if(!(av = glob(argv[optind]))) { + if(!(av = bsdglob(argv[optind]))) { av = av2; av2[0] = argv[optind]; av2[1] = 0; @@ -299,7 +299,7 @@ int main (int argc, char ** argv) } if(!getsl(n,1024)) break; if(!*n) break; - if(!(av = glob(n))) { + if(!(av = bsdglob(n))) { av = av2; av2[0] = n; av2[1] = 0; diff --git a/clients/fmvcmd.c b/clients/fmvcmd.c index 5f6aa38..747a73e 100644 --- a/clients/fmvcmd.c +++ b/clients/fmvcmd.c @@ -80,7 +80,7 @@ int main (int argc, char ** argv) { for( optind=1; argc-1>optind ; optind++) { - if(!(av = glob(argv[optind]))) + if(!(av = bsdglob(argv[optind]))) { av = av2; av2[0] = argv[optind]; diff --git a/clients/fprocmd.c b/clients/fprocmd.c index ba9cf53..feabf12 100644 --- a/clients/fprocmd.c +++ b/clients/fprocmd.c @@ -69,7 +69,7 @@ int main (int argc, char ** argv) { key = *++argv; while(*++argv) { - if(!(av = glob(*argv))) { + if(!(av = bsdglob(*argv))) { av = av2; av2[0] = *argv; av2[1] = 0; @@ -81,7 +81,7 @@ int main (int argc, char ** argv) } else { /* get pro command */ if(argv[1]) while(*++argv) { - if(!(av = glob(*argv))) { + if(!(av = bsdglob(*argv))) { av = av2; av2[0] = *argv; av2[1] = 0; diff --git a/clients/frmcmd.c b/clients/frmcmd.c index e24c095..0ed1b06 100644 --- a/clients/frmcmd.c +++ b/clients/frmcmd.c @@ -42,7 +42,7 @@ int main (int argc, char ** argv) env_client(); while(*++argv) { - if(!(av = glob(*argv))) { + if(!(av = bsdglob(*argv))) { av = av2; av2[0] = *argv; av2[1] = 0; diff --git a/clients/frmdircmd.c b/clients/frmdircmd.c index ababb21..21e31ac 100644 --- a/clients/frmdircmd.c +++ b/clients/frmdircmd.c @@ -43,7 +43,7 @@ int main (int argc, char **argv) env_client(); while(*++argv) { - if(!(av = glob(*argv))) { + if(!(av = bsdglob(*argv))) { av = av2; av2[0] = *argv; av2[1] = 0; diff --git a/clients/fstatcmd.c b/clients/fstatcmd.c index 6110cd6..dc258ec 100644 --- a/clients/fstatcmd.c +++ b/clients/fstatcmd.c @@ -62,7 +62,7 @@ int main (int argc, char ** argv) { for( optind=1; argc>optind ; optind++) { - if(!(av = glob(argv[optind]))) + if(!(av = bsdglob(argv[optind]))) { av = av2; av2[0] = argv[optind]; @@ -80,7 +80,7 @@ int main (int argc, char ** argv) } if(!getsl(n,1024)) break; if(!*n) break; - if(!(av = glob(n))) { + if(!(av = bsdglob(n))) { av = av2; av2[0] = n; av2[1] = 0; diff --git a/include/bsd_extern.h b/include/bsd_extern.h index 797933f..8fa24d4 100644 --- a/include/bsd_extern.h +++ b/include/bsd_extern.h @@ -2,6 +2,6 @@ #define _FSP_BSD_EXTERN_H_ 1 /* glob.c */ -char **glob (register char *); +char **bsdglob (register char *); #endif /* _FSP_BSD_EXTERN_H_ */