From 4d9f467d9928e965b30abcc6ceb7eaa1ddac0ea6 Mon Sep 17 00:00:00 2001 From: Anastasia Karachaliou <anastasia.karachaliou@cern.ch> Date: Tue, 7 Nov 2017 11:12:43 +0100 Subject: [PATCH] Get configuration for rmcd in CTA rpms from the file cta-rmcd.conf instead of castor.conf --- cta.spec.in | 2 ++ mediachanger/castorrmc/rmc/rmc_serv.c | 4 +++- mediachanger/castorrmc/rmc/rmc_smcsubr.c | 3 ++- mediachanger/castorrmc/rmc/send2rmc.c | 4 +++- mediachanger/castorrmc/rmc/smc.c | 3 ++- tapeserver/CMakeLists.txt | 3 +++ 6 files changed, 15 insertions(+), 4 deletions(-) diff --git a/cta.spec.in b/cta.spec.in index cac3b09315..6f61694940 100644 --- a/cta.spec.in +++ b/cta.spec.in @@ -303,6 +303,8 @@ Tools to faciliate working with rmc and smc in cta %attr(0644,root,root) %doc /usr/share/man/man1/smc.1cta.gz %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/cta/cta-rmcd.conf.example %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/cta/cta-smc.conf.example +%attr(0644,root,root) /etc/sysconfig/cta-rmc +%attr(0644,root,root) %config(noreplace) /etc/logrotate.d/cta-rmc #%package -n cta-smc #Summary: Tools to faciliate working with smc in cta diff --git a/mediachanger/castorrmc/rmc/rmc_serv.c b/mediachanger/castorrmc/rmc/rmc_serv.c index 01c7e5bdb4..a09fdc4a2a 100644 --- a/mediachanger/castorrmc/rmc/rmc_serv.c +++ b/mediachanger/castorrmc/rmc/rmc_serv.c @@ -34,6 +34,8 @@ #include <sys/stat.h> #include "rmc_send_scsi_cmd.h" +#define PATH_CONF "cta-rmcd.conf" + /* Forward declaration */ static int rmc_getreq(const int s, int *const req_type, char *const req_data, char **const clienthost); @@ -136,7 +138,7 @@ int rmc_main(const char *const robot) sin.sin_family = AF_INET ; { const char *p; - if ((p = getenv ("RMC_PORT")) || (p = getconfent ("RMC", "PORT", 0))) { + if ((p = getenv ("RMC_PORT")) || (p = getconfent_fromfile (PATH_CONF,"RMC", "PORT", 0))) { sin.sin_port = htons ((unsigned short)atoi (p)); } else { sin.sin_port = htons ((unsigned short)RMC_PORT); diff --git a/mediachanger/castorrmc/rmc/rmc_smcsubr.c b/mediachanger/castorrmc/rmc/rmc_smcsubr.c index 91e4a44444..6b991df31a 100644 --- a/mediachanger/castorrmc/rmc/rmc_smcsubr.c +++ b/mediachanger/castorrmc/rmc/rmc_smcsubr.c @@ -25,6 +25,7 @@ #include "smc_constants.h" #define RBT_XTRA_PROC 10 +#define PATH_CONF "cta-smc.conf" static struct smc_status smc_status; static const char *smc_msgaddr; @@ -442,7 +443,7 @@ int smc_find_cartridge( func[sizeof(func) - 1] = '\0'; /* Skip the 0xB6 cdb command if the tape library is Spectra like */ - smcLibraryType = getconfent("SMC","LIBRARY_TYPE",0); + smcLibraryType = getconfent_fromfile(PATH_CONF,"SMC","LIBRARY_TYPE",0); if (NULL != smcLibraryType && 0 == strcasecmp(smcLibraryType,"SPECTRA")) { rc = smc_find_cartridgeWithoutSendVolumeTag (fd, rbtdev, find_template, type, start, nbelem, diff --git a/mediachanger/castorrmc/rmc/send2rmc.c b/mediachanger/castorrmc/rmc/send2rmc.c index 129492d257..6a445c6860 100644 --- a/mediachanger/castorrmc/rmc/send2rmc.c +++ b/mediachanger/castorrmc/rmc/send2rmc.c @@ -17,6 +17,7 @@ #include "rmc_constants.h" #include "serrno.h" + #define PATH_CONF "cta-rmcd.conf" /* send2tpd - send a request to the SCSI media changer server and wait for the reply */ int send2rmc( @@ -30,6 +31,7 @@ int send2rmc( int c; char func[16]; char *getconfent(); + char *getconfent_fromfile(); char *getenv(); struct hostent *hp; int magic; @@ -44,7 +46,7 @@ int send2rmc( strncpy (func, "send2rmc", 16); sin.sin_family = AF_INET; - if ((p = getenv ("RMC_PORT")) || (p = getconfent ("RMC", "PORT", 0))) { + if ((p = getenv ("RMC_PORT")) || (p = getconfent_fromfile (PATH_CONF,"RMC", "PORT", 0))) { sin.sin_port = htons ((unsigned short)atoi (p)); } else { sin.sin_port = htons ((unsigned short)RMC_PORT); diff --git a/mediachanger/castorrmc/rmc/smc.c b/mediachanger/castorrmc/rmc/smc.c index ce31956a17..54b229003d 100644 --- a/mediachanger/castorrmc/rmc/smc.c +++ b/mediachanger/castorrmc/rmc/smc.c @@ -19,6 +19,7 @@ /* exit codes */ #define USERR 1 +#define PATH_CONF "cta-smc.conf" extern char *optarg; @@ -78,7 +79,7 @@ static int smc_qdrive ( printf ("Drive Ordinal\tElement Addr.\tStatus\t\tVid\n"); useSpectraLib=0; - smcLibraryType = getconfent("SMC","LIBRARY_TYPE",0); + smcLibraryType = getconfent_fromfile(PATH_CONF,"SMC","LIBRARY_TYPE",0); if (NULL != smcLibraryType && 0 == strcasecmp(smcLibraryType,"SPECTRA")) { useSpectraLib = 1; diff --git a/tapeserver/CMakeLists.txt b/tapeserver/CMakeLists.txt index 3ab3b09995..16a525db31 100644 --- a/tapeserver/CMakeLists.txt +++ b/tapeserver/CMakeLists.txt @@ -24,6 +24,9 @@ install (FILES cta-taped.1cta DESTINATION /usr/share/man/man1) install (FILES cta-taped.logrotate DESTINATION /etc/logrotate.d RENAME cta-taped) install (FILES cta-taped.sysconfig DESTINATION /etc/sysconfig RENAME cta-taped) install (FILES cta-taped.service DESTINATION /etc/systemd/system) +install (FILES cta-rmc.logrotate DESTINATION /etc/logrotate.d RENAME cta-rmc) +install (FILES cta-rmc.sysconfig DESTINATION /etc/sysconfig RENAME cta-rmc) +#install (FILES cta-rmc.service DESTINATION /etc/systemd/system) # CTA's cta-taped system tests. add_library(cta-tapedSystemTests SHARED -- GitLab