- Implemented new 'make install' target.

- Re-wrote tog-pegasus.spec file from scratch.
- Ported BZ 167986 authentication code and BZ 167164 + BZ 167165 fixes from
    RHEL-4
This commit is contained in:
jvdias 2005-10-03 18:09:23 +00:00
parent 1053d91053
commit 2ff3d1074a
6 changed files with 8585 additions and 2 deletions

View File

@ -1 +1,2 @@
tog-pegasus-2.4.1.Beta-1.tar.gz
pegasus-2.5.tar.gz

View File

@ -0,0 +1,429 @@
--- pegasus-2.5/src/Pegasus/Server/HTTPAuthenticatorDelegator.cpp.local_or_remote_auth 2005-08-13 20:28:32.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Server/HTTPAuthenticatorDelegator.cpp 2005-09-28 16:18:58.000000000 -0400
@@ -364,6 +364,9 @@
}
}
+ // Let Authenticators know whether this user is Local or Remote:
+ httpMessage->authInfo->setRemoteUser( httpMessage->fromRemoteHost );
+
//
// Handle authentication:
//
--- pegasus-2.5/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorStub.cpp.local_or_remote_auth 2005-07-12 14:05:09.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorStub.cpp 2005-09-28 16:18:58.000000000 -0400
@@ -90,7 +90,8 @@
Boolean PAMBasicAuthenticator::authenticate(
const String& userName,
- const String& password)
+ const String& password,
+ Boolean isRemoteUser)
{
PEG_METHOD_ENTER(TRC_AUTHENTICATION,
"PAMBasicAuthenticator::authenticate()");
--- pegasus-2.5/src/Pegasus/Security/Authentication/PAMBasicAuthenticator.h.local_or_remote_auth 2005-07-12 14:05:09.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Security/Authentication/PAMBasicAuthenticator.h 2005-09-28 16:18:58.000000000 -0400
@@ -71,7 +71,8 @@
*/
Boolean authenticate(
const String& userName,
- const String& password);
+ const String& password,
+ Boolean isRemoteUser);
/** Verify PAM account management for the requesting user.
@param userName String containing the user name
@@ -100,7 +101,8 @@
Boolean _authenticateByPAM(
const String& userName,
- const String& password);
+ const String& password,
+ Boolean isRemoteUser);
void _createPAMStandalone();
@@ -156,7 +158,8 @@
*/
Boolean authenticate(
const String& userName,
- const String& password);
+ const String& password,
+ Boolean isRemoteUser);
/** Verify whether the user is valid.
@param userName String containing the user name
@@ -218,7 +221,8 @@
Boolean _authenticateByPAM(
const String& userName,
- const String& password);
+ const String& password,
+ Boolean isRemoteUser);
#if defined(PEGASUS_USE_PAM_STANDALONE_PROC)
PAMBasicAuthenticatorStandAlone _pamBasicAuthenticatorStandAlone;
--- pegasus-2.5/src/Pegasus/Security/Authentication/BasicAuthenticationHandler.cpp.local_or_remote_auth 2005-07-12 14:05:09.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Security/Authentication/BasicAuthenticationHandler.cpp 2005-09-28 16:18:58.000000000 -0400
@@ -136,7 +136,7 @@
authInfo->setAuthenticatedUser(userName);
authInfo->setAuthenticatedPassword(password);
#else
- authenticated = _basicAuthenticator->authenticate(userName, password);
+ authenticated = _basicAuthenticator->authenticate(userName, password, authInfo->isRemoteUser());
if (authenticated)
{
--- pegasus-2.5/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorUnix.cpp.local_or_remote_auth 2005-07-19 15:14:48.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorUnix.cpp 2005-09-28 16:47:55.000000000 -0400
@@ -129,7 +129,8 @@
Boolean PAMBasicAuthenticator::authenticate(
const String& userName,
- const String& password)
+ const String& password,
+ Boolean isRemoteUser)
{
PEG_METHOD_ENTER(TRC_AUTHENTICATION,
"PAMBasicAuthenticator::authenticate()");
@@ -137,7 +138,7 @@
Boolean authenticated;
#if !defined(PEGASUS_USE_PAM_STANDALONE_PROC)
- authenticated = _authenticateByPAM(userName, password);
+ authenticated = _authenticateByPAM(userName, password, isRemoteUser);
#else
//
// Mutex to Serialize Authentication calls.
@@ -145,8 +146,9 @@
Tracer::trace(TRC_AUTHENTICATION, Tracer::LEVEL4,
"Authentication Mutex lock.");
AutoMutex lock(_authSerializeMutex);
- authenticated = _pamBasicAuthenticatorStandAlone.authenticate(
- userName, password);
+ authenticated =
+ _pamBasicAuthenticatorStandAlone->authenticate(userName,
+ password);
#endif
PEG_METHOD_EXIT();
@@ -155,7 +157,8 @@
Boolean PAMBasicAuthenticator::_authenticateByPAM(
const String& userName,
- const String& password)
+ const String& password,
+ Boolean isRemoteUser)
{
PEG_METHOD_ENTER(TRC_AUTHENTICATION,
"PAMBasicAuthenticator::_authenticateByPAM()");
@@ -165,6 +168,7 @@
pam_handle_t *phandle;
char *name;
APP_DATA mydata;
+ int retcode;
//
// Store the password for PAM authentication
@@ -178,21 +182,38 @@
// Tracer::trace(TRC_AUTHENTICATION, Tracer::LEVEL4,
// "PAMBasicAuthenticator::_authenticateByPAM() - userName = %s; userPassword = %s",
// (const char *)userName.getCString(), (const char *)password.getCString());
+
+ // NOTE: if any pam call should log anything, our syslog socket will be redirected
+ // to the AUTH facility, so we need to redirect it back after each pam call.
//
//Call pam_start since you need to before making any other PAM calls
//
- if ( ( pam_start(service,
+
+ if ( (retcode = pam_start(service,
(const char *)userName.getCString(), &pconv, &phandle) ) != PAM_SUCCESS )
{
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog( LOG_ERR, "pam_start failed: %s", pam_strerror(phandle, retcode));
PEG_METHOD_EXIT();
return (authenticated);
}
+
+ if ( (retcode = pam_set_item(phandle, PAM_TTY, isRemoteUser ? "wbemNetwork" : "wbemLocal")) != PAM_SUCCESS )
+ {
+ pam_end(phandle, 0);
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog( LOG_ERR, "pam_set_item(PAM_TTY=wbem) failed: %s", pam_strerror(phandle, retcode));
+ PEG_METHOD_EXIT();
+ return (authenticated);
+ }
//
//Call pam_authenticate to authenticate the user
//
- if ( ( pam_authenticate(phandle, 0) ) == PAM_SUCCESS )
+ if ( ( retcode = pam_authenticate(phandle, 0) ) == PAM_SUCCESS )
{
Tracer::trace(TRC_AUTHENTICATION, Tracer::LEVEL4,
"pam_authenticate successful.");
@@ -201,22 +222,40 @@
//checking for password and account expiration, as well as verifying access
//hour restrictions.
//
- if ( ( pam_acct_mgmt(phandle, 0) ) == PAM_SUCCESS )
+
+ if ( ( retcode = pam_acct_mgmt(phandle, 0) ) == PAM_SUCCESS )
{
Tracer::trace(TRC_AUTHENTICATION, Tracer::LEVEL4,
"pam_acct_mgmt successful.");
authenticated = true;
- }
+ }else
+ {
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog(LOG_ERR, "pam_acct_mgmt failed: %s",pam_strerror(phandle, retcode));
+ }
+ }else
+ {
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog(LOG_ERR, "pam_authenticate failed: %s",pam_strerror(phandle, retcode));
}
-
//
//Call pam_end to end our PAM work
//
pam_end(phandle, 0);
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
- PEG_METHOD_EXIT();
+ if ( ! authenticated )
+ syslog(LOG_ERR, "PAM authentication failed for %s user: %s",
+ isRemoteUser ? "remote" : "local",
+ (const char*)userName.getCString()
+ );
+ PEG_METHOD_EXIT();
return (authenticated);
+
}
Boolean PAMBasicAuthenticator::validateUser(const String& userName)
@@ -231,6 +270,7 @@
pam_handle_t *phandle;
char *name;
APP_DATA mydata;
+ int retcode;
const char *service = "wbem";
pconv.conv = PAMBasicAuthenticator::pamValidateUserCallback;
@@ -239,21 +279,43 @@
//
// Call pam_start since you need to before making any other PAM calls
//
- if ( pam_start(service,
- (const char *)userName.getCString(), &pconv, &phandle) != PAM_SUCCESS)
- {
+ if ( (retcode =
+ pam_start(service,(const char *)userName.getCString(), &pconv, &phandle)
+ ) != PAM_SUCCESS
+ )
+ {
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog( LOG_ERR, "pam_start() failed: %s", pam_strerror(phandle, retcode));
PEG_METHOD_EXIT();
return (authenticated);
}
+ if ( (retcode = pam_set_item(phandle, PAM_TTY, "wbemLocal")) != PAM_SUCCESS )
+ {
+ pam_end(phandle, 0);
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog( LOG_ERR, "pam_set_item(PAM_TTY=wbemLocal) failed: %s", pam_strerror(phandle, retcode));
+ PEG_METHOD_EXIT();
+ return (authenticated);
+ }
//
// Call pam_acct_mgmt, to check if the user account is valid. This includes
// checking for account expiration, as well as verifying access
// hour restrictions.
//
- if ( pam_acct_mgmt(phandle, 0) == PAM_SUCCESS )
- {
+ if ( (retcode = pam_acct_mgmt(phandle, 0)) == PAM_SUCCESS )
+ {
authenticated = true;
+ }else
+ {
+ pam_end(phandle, 0);
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog( LOG_ERR, "pam_acct_mgmt() failed: %s", pam_strerror(phandle, retcode));
+ PEG_METHOD_EXIT();
+ return (authenticated);
}
//
@@ -261,6 +323,9 @@
//
pam_end(phandle, 0);
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+
#else
//
// Mutex to Serialize Authentication calls.
--- pegasus-2.5/src/Pegasus/Security/Authentication/BasicAuthenticator.h.local_or_remote_auth 2005-07-12 14:05:09.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Security/Authentication/BasicAuthenticator.h 2005-09-28 16:18:58.000000000 -0400
@@ -65,7 +65,8 @@
*/
virtual Boolean authenticate(
const String& userName,
- const String& password) = 0;
+ const String& password,
+ Boolean isRemoteUser) = 0;
/** Construct and return the HTTP Basic authentication challenge header
@return A string containing the authentication challenge header.
--- pegasus-2.5/src/Pegasus/Common/HTTPMessage.cpp.local_or_remote_auth 2005-05-31 21:51:53.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Common/HTTPMessage.cpp 2005-09-28 16:18:58.000000000 -0400
@@ -101,7 +101,8 @@
message(message_),
queueId(queueId_),
acceptLanguagesDecoded(false),
- contentLanguagesDecoded(false)
+ contentLanguagesDecoded(false),
+ fromRemoteHost(true)
{
if (cimException_)
cimException = *cimException_;
--- pegasus-2.5/src/Pegasus/Common/HTTPMessage.h.local_or_remote_auth 2005-05-12 02:59:56.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Common/HTTPMessage.h 2005-09-28 16:18:58.000000000 -0400
@@ -77,7 +77,8 @@
ContentLanguages contentLanguages;
Boolean acceptLanguagesDecoded;
Boolean contentLanguagesDecoded;
- CIMException cimException;
+ Boolean fromRemoteHost;
+ CIMException cimException;
void parse(
String& startLine,
--- pegasus-2.5/src/Pegasus/Common/AuthenticationInfoRep.cpp.local_or_remote_auth 2005-02-05 17:59:23.000000000 -0500
+++ pegasus-2.5/src/Pegasus/Common/AuthenticationInfoRep.cpp 2005-09-28 16:18:58.000000000 -0400
@@ -55,7 +55,8 @@
_privileged(false),
_authType(String::EMPTY),
_authStatus(NEW_REQUEST),
- _exportConnection(false)
+ _exportConnection(false),
+ _remoteUser(true)
{
PEG_METHOD_ENTER(
TRC_AUTHENTICATION, "AuthenticationInfoRep::AuthenticationInfoRep");
@@ -178,5 +179,14 @@
PEG_METHOD_EXIT();
}
+void AuthenticationInfoRep::setRemoteUser(Boolean remoteUser)
+{
+ PEG_METHOD_ENTER(TRC_AUTHENTICATION,
+ "AuthenticationInfoRep::setRemoteUser");
+
+ _remoteUser = remoteUser;
+
+ PEG_METHOD_EXIT();
+}
PEGASUS_NAMESPACE_END
--- pegasus-2.5/src/Pegasus/Common/AuthenticationInfo.h.local_or_remote_auth 2005-02-05 17:59:23.000000000 -0500
+++ pegasus-2.5/src/Pegasus/Common/AuthenticationInfo.h 2005-09-28 16:18:58.000000000 -0400
@@ -329,6 +329,22 @@
_rep->setClientCertificate(clientCertificate);
}
+ /** Indicate whether the user is Remote
+ */
+ Boolean isRemoteUser() const
+ {
+ _checkRep();
+ return _rep->isRemoteUser();
+ }
+
+ /** Set the Remote User flag
+ */
+ void setRemoteUser(Boolean remoteUser)
+ {
+ _checkRep();
+ _rep->setRemoteUser(remoteUser);
+ }
+
private:
AuthenticationInfo(AuthenticationInfoRep* rep) : _rep(rep)
--- pegasus-2.5/src/Pegasus/Common/AuthenticationInfoRep.h.local_or_remote_auth 2005-02-05 17:59:23.000000000 -0500
+++ pegasus-2.5/src/Pegasus/Common/AuthenticationInfoRep.h 2005-09-28 16:18:58.000000000 -0400
@@ -140,6 +140,14 @@
void setExportConnection(Boolean exportConnection);
+ Boolean isRemoteUser() const
+ {
+ return _remoteUser;
+ }
+
+ void setRemoteUser(Boolean remoteUser);
+
+
//PEP187
SSLCertificateInfo* getClientCertificate()
{
@@ -170,7 +178,8 @@
#endif
Boolean _exportConnection;
- SSLCertificateInfo* _clientCertificate;
+ SSLCertificateInfo* _clientCertificate;
+ Boolean _remoteUser;
};
PEGASUS_NAMESPACE_END
--- pegasus-2.5/src/Pegasus/Common/HTTPConnection.cpp.local_or_remote_auth 2005-08-18 20:24:32.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Common/HTTPConnection.cpp 2005-09-28 16:18:58.000000000 -0400
@@ -1807,6 +1807,30 @@
"_requestCount = %d", _requestCount.value());
message->dest = _outputMessageQueue->getQueueId();
// SendForget(message);
+
+ // Allow authenticators to differentiate Remote and Local users:
+ struct sockaddr_in sin_peer, sin_svr; // don't need to worry about IPv6 yet ...
+ socklen_t slen1=sizeof(struct sockaddr_in), slen2=sizeof(struct sockaddr_in);
+ uint32_t sock = _socket.get()->getSocket() ;
+ memset(&sin_peer,'\0',slen1);
+ memset(&sin_svr, '\0',slen2);
+ if ( ( ::getpeername( sock, (struct sockaddr*)&sin_peer, &slen1) == 0 )
+ ||( ::getsockname( sock, (struct sockaddr*)&sin_svr, &slen2) == 0 )
+ )
+ {
+ if( sin_peer.sin_family == AF_INET )
+ {
+ if( ((ntohl( sin_peer.sin_addr.s_addr ) >> 24) & 0xff) == 127 )
+ // message was sent FROM localhost interface
+ message->fromRemoteHost = false;
+ }
+ if( sin_svr.sin_family == AF_INET )
+ {
+ if( ((ntohl( sin_svr.sin_addr.s_addr ) >> 24) & 0xff) == 127 )
+ // message was sent TO localhost interface
+ message->fromRemoteHost = false;
+ }
+ }
//
// Set the entry status to BUSY.

File diff suppressed because it is too large Load Diff

723
pegasus-2.5-redhat.patch Normal file
View File

@ -0,0 +1,723 @@
--- pegasus-2.5/Makefile.ReleaseTest.redhat 2005-05-27 13:29:01.000000000 -0400
+++ pegasus-2.5/Makefile.ReleaseTest 2005-10-03 12:29:48.000000000 -0400
@@ -54,7 +54,7 @@
endif
TEST_BIN_FILES_SRCPATH = $(PEGASUS_HOME)/bin
-TEST_LIB_FILES_SRCPATH = $(PEGASUS_HOME)/lib
+TEST_LIB_FILES_SRCPATH = $(PEGASUS_HOME)/$(PEGASUS_ARCH_LIB_DIR)
TEST_MAK_FILES_SRCPATH = $(ROOT)/mak
MAK_FILES = \
@@ -121,7 +121,7 @@
stageTEST:
@$(RMDIRHIER) $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)
@$(MKDIRHIER) $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/bin
- @$(MKDIRHIER) $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/lib
+ @$(MKDIRHIER) $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/$(PEGASUS_ARCH_LIB_DIR)
@$(MKDIRHIER) $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/mak
@$(MAKE) --directory=$(ROOT) -f Makefile.ReleaseTest -s stage_makfiles
@$(MAKE) --directory=$(ROOT) -f Makefile.ReleaseTest -s stage_testproviderfiles
@@ -134,7 +134,7 @@
@$(foreach i, $(MAK_FILES), $(COPY) $(TEST_MAK_FILES_SRCPATH)/$(i) $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/mak/$(i);)
stage_testproviderfiles:
- @$(foreach i, $(PEGASUS_TEST_PROVIDERS), $(COPY) $(TEST_LIB_FILES_SRCPATH)/$(i)$(LIB_SUFFIX) $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/lib/$(i)$(LIB_SUFFIX);)
+ @$(foreach i, $(PEGASUS_TEST_PROVIDERS), $(COPY) $(TEST_LIB_FILES_SRCPATH)/$(i)$(LIB_SUFFIX) $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/$(PEGASUS_ARCH_LIB_DIR)/$(i)$(LIB_SUFFIX);)
stage_prestarttests:
@$(foreach i, $(PRESTARTTEST_FILES), $(COPY) $(TEST_BIN_FILES_SRCPATH)/$(i) $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/bin/$(i);)
@@ -157,7 +157,7 @@
createMakefile_providerlinks:
@$(ECHO-E) "create_providerlinks:" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
- @$(foreach i, $(PEGASUS_TEST_PROVIDERS), $(ECHO-E) "\t@$(MAKE) createlink OBJECT=$(PEGASUS_TEST_DIR)/lib/$(i)$(LIB_SUFFIX) LINKNAME=$(PEGASUS_PROVIDER_LIB_DIR)/$(i)$(LIB_LINK_SUFFIX)" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile ;)
+ @$(foreach i, $(PEGASUS_TEST_PROVIDERS), $(ECHO-E) "\t@$(MAKE) createlink OBJECT=$(PEGASUS_TEST_DIR)/$(PEGASUS_ARCH_LIB_DIR)/$(i)$(LIB_SUFFIX) LINKNAME=$(PEGASUS_PROVIDER_LIB_DIR)/$(i)$(LIB_LINK_SUFFIX)" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile ;)
@$(ECHO-E) "" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "remove_providerlinks:" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(foreach i, $(PEGASUS_TEST_PROVIDERS), $(ECHO-E) "\trm -f $(PEGASUS_PROVIDER_LIB_DIR)/$(i)$(LIB_LINK_SUFFIX)" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile ;)
@@ -234,7 +234,7 @@
@$(MAKE) --directory=$(ROOT) -f Makefile.ReleaseTest -s preinstall_setreleasepermissions
preinstall_setreleasepermissions:
- @$(foreach i, $(PEGASUS_TEST_PROVIDERS), $(MAKE) -f $(ROOT)/Makefile.ReleaseTest setpermissions PERMISSIONS="$(Prwxr_xr_x)" OWNER="$(INSTALL_USR)" GROUP="$(INSTALL_GRP)" OBJECT=$(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/lib/$(i)$(LIB_SUFFIX);)
+ @$(foreach i, $(PEGASUS_TEST_PROVIDERS), $(MAKE) -f $(ROOT)/Makefile.ReleaseTest setpermissions PERMISSIONS="$(Prwxr_xr_x)" OWNER="$(INSTALL_USR)" GROUP="$(INSTALL_GRP)" OBJECT=$(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/$(PEGASUS_ARCH_LIB_DIR)/$(i)$(LIB_SUFFIX);)
_append_preunSectionToSpecFile:
@$(ECHO-E) "%if %{PEGASUS_BUILD_TEST_RPM}" >> $(PEGASUS_RPM_SPEC_FILE_PATH)
@@ -253,13 +253,13 @@
@$(ECHO-E) "# Test Files" >> $(PEGASUS_RPM_SPEC_FILE_PATH)
@$(ECHO-E) "#" >> $(PEGASUS_RPM_SPEC_FILE_PATH)
@$(ECHO-E) "%dir %attr($(Pr_xr_xr_x), $(INSTALL_USR),$(INSTALL_GRP)) $(PEGASUS_TEST_DIR)" >> $(PEGASUS_RPM_SPEC_FILE_PATH)
- @$(ECHO-E) "%dir %attr($(Pr_xr_xr_x), $(INSTALL_USR),$(INSTALL_GRP)) $(PEGASUS_TEST_DIR)/lib" >> $(PEGASUS_RPM_SPEC_FILE_PATH)
+ @$(ECHO-E) "%dir %attr($(Pr_xr_xr_x), $(INSTALL_USR),$(INSTALL_GRP)) $(PEGASUS_TEST_DIR)/$(PEGASUS_ARCH_LIB_DIR)" >> $(PEGASUS_RPM_SPEC_FILE_PATH)
@$(ECHO-E) "%dir %attr($(Pr_xr_xr_x), $(INSTALL_USR),$(INSTALL_GRP)) $(PEGASUS_TEST_DIR)/bin" >> $(PEGASUS_RPM_SPEC_FILE_PATH)
@$(ECHO-E) "%dir %attr($(Pr_xr_xr_x), $(INSTALL_USR),$(INSTALL_GRP)) $(PEGASUS_TEST_DIR)/mak" >> $(PEGASUS_RPM_SPEC_FILE_PATH)
@$(foreach i, $(MAK_FILES), $(ECHO-E) \
"%attr($(Pr__r__r__),$(INSTALL_USR),$(INSTALL_GRP)) $(PEGASUS_TEST_DIR)/mak/$(i)" >> $(PEGASUS_RPM_SPEC_FILE_PATH);)
@$(foreach i, $(PEGASUS_TEST_PROVIDERS), $(ECHO-E) \
- "%attr($(Pr_xr_xr_x),$(INSTALL_USR),$(INSTALL_GRP)) $(PEGASUS_TEST_DIR)/lib/$(i)$(LIB_SUFFIX)" >> $(PEGASUS_RPM_SPEC_FILE_PATH);)
+ "%attr($(Pr_xr_xr_x),$(INSTALL_USR),$(INSTALL_GRP)) $(PEGASUS_TEST_DIR)/$(PEGASUS_ARCH_LIB_DIR)/$(i)$(LIB_SUFFIX)" >> $(PEGASUS_RPM_SPEC_FILE_PATH);)
@$(foreach i, $(PRESTARTTEST_FILES), $(ECHO-E) \
"%attr($(Pr_xr_xr_x),$(INSTALL_USR),$(INSTALL_GRP)) $(PEGASUS_TEST_DIR)/bin/$(i)" >> $(PEGASUS_RPM_SPEC_FILE_PATH);)
@$(foreach i, $(POSTSTARTTEST_FILES), $(ECHO-E) \
--- pegasus-2.5/Makefile.Release.redhat 2005-08-17 17:00:43.000000000 -0400
+++ pegasus-2.5/Makefile.Release 2005-10-03 12:29:48.000000000 -0400
@@ -481,13 +481,13 @@
$(MAKE) -f $(ROOT)/Makefile.Release setpermissions PERMISSIONS="$(Prwxr_xr_x)" OWNER="$(INSTALL_USR)" GROUP="$(INSTALL_GRP)" OBJECT=$(PEGASUS_STAGING_DIR)$(PEGASUS_LOCAL_AUTH_DIR)
stage_PegasusLibraryDirectoryFiles: FORCE
- $(foreach i, $(PEGASUS_LIBRARIES), $(COPY) $(PEGASUS_HOME)/lib/$(i)$(LIB_SUFFIX) $(PEGASUS_STAGING_DIR)$(PEGASUS_DEST_LIB_DIR)/$(i)$(LIB_SUFFIX);)
+ $(foreach i, $(PEGASUS_LIBRARIES), $(COPY) $(PEGASUS_HOME)/$(PEGASUS_ARCH_LIB_DIR)/$(i)$(LIB_SUFFIX) $(PEGASUS_STAGING_DIR)$(PEGASUS_DEST_LIB_DIR)/$(i)$(LIB_SUFFIX);)
$(foreach i, $(PEGASUS_LIBRARY_LINKS), $(MAKE) -f $(ROOT)/Makefile.Release createlink OBJECT=$(i)$(LIB_SUFFIX) LINKNAME=$(PEGASUS_STAGING_DIR)$(PEGASUS_DEST_LIB_DIR)/$(i)$(LIB_LINK_SUFFIX);)
setpermissions_PegasusLibraryDirectoryFiles: FORCE
$(foreach i, $(PEGASUS_LIBRARIES), $(MAKE) -f $(ROOT)/Makefile.Release setpermissions PERMISSIONS="$(Prwxr_xr_x)" OWNER="$(INSTALL_USR)" GROUP="$(INSTALL_GRP)" OBJECT=$(PEGASUS_STAGING_DIR)$(PEGASUS_DEST_LIB_DIR)/$(i)$(LIB_SUFFIX);)
stage_PegasusProviderLibraryDirectoryFiles: FORCE
- $(foreach i, $(PEGASUS_PROVIDERS), $(COPY) $(PEGASUS_HOME)/lib/$(i)$(LIB_SUFFIX) $(PEGASUS_STAGING_DIR)$(PEGASUS_PROVIDER_LIB_DIR)/$(i)$(LIB_SUFFIX);)
+ $(foreach i, $(PEGASUS_PROVIDERS), $(COPY) $(PEGASUS_HOME)/$(PEGASUS_ARCH_LIB_DIR)/$(i)$(LIB_SUFFIX) $(PEGASUS_STAGING_DIR)$(PEGASUS_PROVIDER_LIB_DIR)/$(i)$(LIB_SUFFIX);)
$(foreach i, $(PEGASUS_PROVIDERS), $(MAKE) -f $(ROOT)/Makefile.Release createlink OBJECT=$(i)$(LIB_SUFFIX) LINKNAME=$(PEGASUS_STAGING_DIR)$(PEGASUS_PROVIDER_LIB_DIR)/$(i)$(LIB_LINK_SUFFIX);)
setpermissions_PegasusProviderLibraryDirectoryFiles: FORCE
--- pegasus-2.5/env_var_Linux.status.redhat 2005-09-02 14:40:58.000000000 -0400
+++ pegasus-2.5/env_var_Linux.status 2005-10-03 12:29:48.000000000 -0400
@@ -9,6 +9,7 @@
PEGASUS_OVERRIDE_PRODUCT_ID=yes
PEGASUS_PRODUCT_NAME="OpenPegasus"
PEGASUS_PRODUCT_VERSION="2.5.0"
+PEGASUS_RPM_VERSION="2.5"
PEGASUS_PRODUCT_STATUS=""
PAM_CONFIG_DIR=/etc/pam.d
@@ -25,32 +26,31 @@
PEGASUS_HAS_SSL=yes
PEGASUS_NOASSERTS=yes
PEGASUS_PAM_AUTHENTICATION=true
-PEGASUS_USE_PAM_STANDALONE_PROC=true
PEGASUS_USE_RELEASE_CONFIG_OPTIONS=true
PEGASUS_USE_RELEASE_DIRS=true
PEGASUS_USE_SYSLOGS=true
PEGASUS_CIM_SCHEMA=CIM29
-PEGASUS_PROD_DIR = /opt/tog-pegasus
-PEGASUS_PRODSHARE_DIR = $(PEGASUS_PROD_DIR)/share
-PEGASUS_DOC_DIR = $(PEGASUS_PRODSHARE_DIR)/doc
-PEGASUS_MAN_DIR = $(PEGASUS_PRODSHARE_DIR)/man
+PEGASUS_PROD_DIR = /usr
+PEGASUS_PRODSHARE_DIR = $(PEGASUS_PROD_DIR)/share/Pegasus
+PEGASUS_DOC_DIR = /usr/share/doc/tog-pegasus-$(PEGASUS_RPM_VERSION)
+PEGASUS_MAN_DIR = /usr/share/man
PEGASUS_MANUSER_DIR = $(PEGASUS_MAN_DIR)/man1
PEGASUS_MANADMIN_DIR = $(PEGASUS_MAN_DIR)/man8
-PEGASUS_MOF_DIR = $(PEGASUS_PROD_DIR)/mof
-PEGASUS_DEST_LIB_DIR = $(PEGASUS_PROD_DIR)/lib
-PEGASUS_PROVIDER_DIR = $(PEGASUS_PROD_DIR)/providers
-PEGASUS_PROVIDER_LIB_DIR = $(PEGASUS_PROVIDER_DIR)/lib
+PEGASUS_MOF_DIR = $(PEGASUS_PRODSHARE_DIR)/mof
+PEGASUS_DEST_LIB_DIR = $(PEGASUS_PROD_DIR)/$(PEGASUS_ARCH_LIB_DIR)
+PEGASUS_PROVIDER_DIR = $(PEGASUS_DEST_LIB_DIR)/Pegasus/providers
+PEGASUS_PROVIDER_LIB_DIR = $(PEGASUS_PROVIDER_DIR)
PEGASUS_SBIN_DIR = $(PEGASUS_PROD_DIR)/sbin
PEGASUS_BIN_DIR = $(PEGASUS_PROD_DIR)/bin
-PEGASUS_VARDATA_DIR = /var/opt/tog-pegasus
+PEGASUS_VARDATA_DIR = /var/lib/Pegasus
PEGASUS_REPOSITORY_PARENT_DIR = $(PEGASUS_VARDATA_DIR)
PEGASUS_REPOSITORY_DIR = $(PEGASUS_REPOSITORY_PARENT_DIR)/repository
PEGASUS_PREV_REPOSITORY_DIR = $(PEGASUS_REPOSITORY_PARENT_DIR)/prev_repository
-PEGASUS_CONFIG_DIR = /etc/opt/tog-pegasus
+PEGASUS_CONFIG_DIR = /etc/Pegasus
PEGASUS_VARRUN_DIR = /var/run/tog-pegasus
PEGASUS_CIMSERVER_START_FILE = $(PEGASUS_VARRUN_DIR)/cimserver.pid
-PEGASUS_LOCAL_DOMAIN_SOCKET_DIR = $(PEGASUS_VARRUN_DIR)/socket
+PEGASUS_LOCAL_DOMAIN_SOCKET_DIR = $(PEGASUS_VARRUN_DIR)
PEGASUS_LOCAL_DOMAIN_SOCKET_PATH = $(PEGASUS_LOCAL_DOMAIN_SOCKET_DIR)/cimxml.socket
PEGASUS_VARDATA_CACHE_DIR = $(PEGASUS_VARDATA_DIR)/cache
PEGASUS_LOCAL_AUTH_DIR = $(PEGASUS_VARDATA_CACHE_DIR)/localauth
@@ -63,11 +63,11 @@
PEGASUS_SSL_CERT_FILE = server.pem
PEGASUS_SSL_TRUSTSTORE = client.pem
-PEGASUS_SAMPLES_DIR = $(PEGASUS_PROD_DIR)/samples
+PEGASUS_SAMPLES_DIR = $(PEGASUS_PRODSHARE_DIR)/samples
PEGASUS_INCLUDE_DIR = $(PEGASUS_PROD_DIR)/include
-PEGASUS_HTML_DIR = $(PEGASUS_PROD_DIR)/html
+PEGASUS_HTML_DIR = $(PEGASUS_PRODSHARE_DIR)/html
-PEGASUS_TEST_DIR = $(PEGASUS_PROD_DIR)/test
+PEGASUS_TEST_DIR = $(PEGASUS_PRODSHARE_DIR)/test
PEGASUS_TEST_REPOSITORY_DIR = $(PEGASUS_VARDATA_DIR)
PEGASUS_TEST_REPOSITORY_NAME = testrepository
--- pegasus-2.5/mak/config-linux.mak.redhat 2005-05-12 11:27:28.000000000 -0400
+++ pegasus-2.5/mak/config-linux.mak 2005-10-03 12:29:59.000000000 -0400
@@ -76,10 +76,12 @@
SYS_LIBS = -ldl -lpthread
+PEGASUS_INSTALL = /usr/bin/install
+
# Build using fixed release settings
#
ifdef PEGASUS_USE_RELEASE_DIRS
- PEGASUS_DEST_LIB_DIR=/opt/tog-pegasus/lib
+ PEGASUS_DEST_LIB_DIR=/usr/$(PEGASUS_ARCH_LIB_DIR)
endif
# PAM support
@@ -102,7 +104,7 @@
ifdef PEGASUS_DEBUG
FLAGS += -g -fPIC -W -Wall -Wno-unused -D_GNU_SOURCE -DTHREAD_SAFE -D_REENTRANT
else
-FLAGS += -fPIC -W -Wall -Wno-unused -D_GNU_SOURCE -DTHREAD_SAFE -D_REENTRANT -s -fno-enforce-eh-specs
+FLAGS += -fPIC -W -Wall -Wno-unused -D_GNU_SOURCE -DTHREAD_SAFE -D_REENTRANT -fno-enforce-eh-specs
ifdef PEGASUS_OPTIMIZE_FOR_SIZE
FLAGS += -Os
else
@@ -152,7 +154,7 @@
SYS_INCLUDES += -I${ICU_ROOT}/source/common -I${ICU_ROOT}/source/i18n
DEFINES += -DPEGASUS_HAS_ICU
- EXTRA_LIBRARIES += -L$(ICU_INSTALL)/lib -licuuc -licui18n -licudata
+ EXTRA_LIBRARIES += -L$(ICU_INSTALL)/$(PEGASUS_ARCH_LIB_DIR) -licuuc -licui18n -licudata
endif
endif
--- pegasus-2.5/mak/SDKMakefile.redhat 2005-07-15 15:46:17.000000000 -0400
+++ pegasus-2.5/mak/SDKMakefile 2005-10-03 12:29:48.000000000 -0400
@@ -382,10 +382,10 @@
@$(MAKE) --directory=$(PEGASUS_ROOT)/mak -f SDKMakefile -i deregisterproviders
@$(MAKE) --directory=$(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR) -f Makefile clean \
PEGASUS_SAMPLES_DIR=$(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR) \
- PEGASUS_PROVIDER_LIB_DIR=$(PEGASUS_HOME)/lib
+ PEGASUS_PROVIDER_LIB_DIR=$(PEGASUS_HOME)/$(PEGASUS_ARCH_LIB_DIR)
@$(MAKE) --directory=$(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR) -f Makefile all \
- PEGASUS_PROVIDER_LIB_DIR=$(PEGASUS_HOME)/lib PEGASUS_INCLUDE_DIR=$(PEGASUS_STAGING_DIR)$(PEGASUS_INCLUDE_DIR) \
- PEGASUS_DEST_LIB_DIR=$(PEGASUS_HOME)/lib PEGASUS_SAMPLES_DIR=$(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR) \
+ PEGASUS_PROVIDER_LIB_DIR=$(PEGASUS_HOME)/$(PEGASUS_ARCH_LIB_DIR) PEGASUS_INCLUDE_DIR=$(PEGASUS_STAGING_DIR)$(PEGASUS_INCLUDE_DIR) \
+ PEGASUS_DEST_LIB_DIR=$(PEGASUS_HOME)/$(PEGASUS_ARCH_LIB_DIR) PEGASUS_SAMPLES_DIR=$(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR) \
PEGASUS_INDICATION_CONSUMER_LOG_DIR=$(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/Providers/DefaultC++/SimpleDisplayConsumer
@$(MAKE) --directory=$(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/Providers/Load -f Makefile createrepository \
PEGASUS_MOF_DIR=$(PEGASUS_ROOT)/Schemas PEGASUS_BIN_DIR=$(PEGASUS_HOME)bin
--- pegasus-2.5/mak/config.mak.redhat 2005-08-12 13:52:31.000000000 -0400
+++ pegasus-2.5/mak/config.mak 2005-10-03 12:29:48.000000000 -0400
@@ -85,7 +85,7 @@
OBJ_DIR = $(HOME_DIR)/obj/$(DIR)
BIN_DIR = $(HOME_DIR)/bin
-LIB_DIR = $(HOME_DIR)/lib
+LIB_DIR = $(HOME_DIR)/$(PEGASUS_ARCH_LIB_DIR)
# l10n
# define the location for the compiled messages
@@ -544,7 +544,7 @@
# Unless otherwise specified, Pegasus libraries go in $(PEGASUS_HOME)/lib
ifndef PEGASUS_DEST_LIB_DIR
- PEGASUS_DEST_LIB_DIR = lib
+ PEGASUS_DEST_LIB_DIR = $(PEGASUS_ARCH_LIB_DIR)
endif
ifeq ($(OS),VMS)
--- pegasus-2.5/mak/program-unix.mak.redhat 2005-05-12 11:27:28.000000000 -0400
+++ pegasus-2.5/mak/program-unix.mak 2005-10-03 12:29:48.000000000 -0400
@@ -28,6 +28,12 @@
#//==============================================================================
INCLUDES = -I$(ROOT)/src $(EXTRA_INCLUDES)
+ifdef PEGASUS_PLATFORM_LINUX_GENERIC_GNU
+ ifdef PEGASUS_EXE_LINK_FLAGS
+ EXTRA_LINK_FLAGS += $(PEGASUS_EXE_LINK_FLAGS)
+ endif
+endif
+
TMP_OBJECTS = $(foreach i,$(SOURCES),$(OBJ_DIR)/$i)
ifeq ($(OS_TYPE),windows)
@@ -56,7 +62,7 @@
ifdef PEGASUS_HAS_MESSAGES
ifdef ICU_ROOT
ifdef ICU_INSTALL
- SYS_LIBS += -L${ICU_INSTALL}/lib -licui18n -licuuc
+ SYS_LIBS += -L${ICU_INSTALL}/$(PEGASUS_ARCH_LIB_DIR) -licui18n -licuuc
endif
endif
endif
@@ -90,9 +96,9 @@
ifdef ICU_ROOT
ifdef ICU_INSTALL
ifdef PEGASUS_USE_RELEASE_DIRS
- $(LINK_WRAPPER) $(CXX) $(FLAGS) $(EXTRA_LINK_FLAGS) -Xlinker -rpath -Xlinker $(PEGASUS_DEST_LIB_DIR) -Xlinker -rpath-link -Xlinker $(LIB_DIR) -Xlinker -rpath -Xlinker ${ICU_INSTALL}/lib -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)
+ $(LINK_WRAPPER) $(CXX) $(FLAGS) $(EXTRA_LINK_FLAGS) -Xlinker -rpath -Xlinker $(PEGASUS_DEST_LIB_DIR) -Xlinker -rpath-link -Xlinker $(LIB_DIR) -Xlinker -rpath -Xlinker ${ICU_INSTALL}/$(PEGASUS_ARCH_LIB_DIR) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)
else
- $(LINK_WRAPPER) $(CXX) $(FLAGS) $(EXTRA_LINK_FLAGS) -Xlinker -rpath -Xlinker $(LIB_DIR) -Xlinker -rpath -Xlinker ${ICU_INSTALL}/lib -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)
+ $(LINK_WRAPPER) $(CXX) $(FLAGS) $(EXTRA_LINK_FLAGS) -Xlinker -rpath -Xlinker $(LIB_DIR) -Xlinker -rpath -Xlinker ${ICU_INSTALL}/$(PEGASUS_ARCH_LIB_DIR) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)
endif
endif
endif
@@ -109,11 +115,11 @@
ifdef PEGASUS_HAS_MESSAGES
ifdef ICU_ROOT
ifdef ICU_INSTALL
- $(LINK_WRAPPER) $(CXX) -Wl,-brtl -blibpath:/usr/linux/lib:/usr/lib:/lib:$(ICU_INSTALL)/lib -Wl,-bhalt:$(AIX_LD_HALT) $(FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)
+ $(LINK_WRAPPER) $(CXX) -Wl,-brtl -blibpath:/usr/linux/$(PEGASUS_ARCH_LIB_DIR):/usr/$(PEGASUS_ARCH_LIB_DIR):/$(PEGASUS_ARCH_LIB_DIR):$(ICU_INSTALL)/$(PEGASUS_ARCH_LIB_DIR) -Wl,-bhalt:$(AIX_LD_HALT) $(FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)
endif
endif
else
- $(LINK_WRAPPER) $(CXX) -Wl,-brtl -blibpath:/usr/linux/lib:/usr/lib:/lib -Wl,-bhalt:$(AIX_LD_HALT) $(FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)
+ $(LINK_WRAPPER) $(CXX) -Wl,-brtl -blibpath:/usr/linux/$(PEGASUS_ARCH_LIB_DIR):/usr/$(PEGASUS_ARCH_LIB_DIR):/$(PEGASUS_ARCH_LIB_DIR):$(ICU_INSTALL)/$(PEGASUS_ARCH_LIB_DIR) -Wl,-bhalt:$(AIX_LD_HALT) $(FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)
endif
else
$(LINK_WRAPPER) $(CXX) -Wl,-brtl -Wl,-bhalt:$(AIX_LD_HALT) $(FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)
@@ -147,3 +153,5 @@
-include $(OBJ_DIR)/depend.mak
include $(ROOT)/mak/misc.mak
+
+include $(ROOT)/mak/install-program-unix.mak
--- pegasus-2.5/mak/library-unix.mak.redhat 2005-05-12 11:27:28.000000000 -0400
+++ pegasus-2.5/mak/library-unix.mak 2005-10-03 12:29:48.000000000 -0400
@@ -32,11 +32,11 @@
ifdef PEGASUS_HAS_MESSAGES
ifdef ICU_ROOT
ifdef ICU_INSTALL
- LINK_ARGUMENTS = -qmkshrobj=$(AIX_LIB_PRIORITY) -blibpath:/usr/linux/lib:/usr/lib:/lib:$(ICU_INSTALL)/lib -Wl,-bhalt:$(AIX_LD_HALT)
+ LINK_ARGUMENTS = -qmkshrobj=$(AIX_LIB_PRIORITY) -blibpath:/usr/linux/$(PEGASUS_ARCH_LIB_DIR):/usr/$(PEGASUS_ARCH_LIB_DIR):/$(PEGASUS_ARCH_LIB_DIR):$(ICU_INSTALL)/$(PEGASUS_ARCH_LIB_DIR) -Wl,-bhalt:$(AIX_LD_HALT)
endif
endif
else
- LINK_ARGUMENTS = -qmkshrobj=$(AIX_LIB_PRIORITY) -blibpath:/usr/linux/lib:/usr/lib:/lib -Wl,-bhalt:$(AIX_LD_HALT)
+ LINK_ARGUMENTS = -qmkshrobj=$(AIX_LIB_PRIORITY) -blibpath:/usr/linux/$(PEGASUS_ARCH_LIB_DIR):/usr/$(PEGASUS_ARCH_LIB_DIR):/$(PEGASUS_ARCH_LIB_DIR) -Wl,-bhalt:$(AIX_LD_HALT)
endif
else
LINK_ARGUMENTS = -qmkshrobj=$(AIX_LIB_PRIORITY) -Wl,-bhalt:$(AIX_LD_HALT)
@@ -56,12 +56,12 @@
endif
ifeq ($(PEGASUS_SUPPORTS_DYNLIB),yes)
ifdef PEGASUS_USE_RELEASE_DIRS
- LINK_COMMAND += -Wl,+b$(PEGASUS_DEST_LIB_DIR):/usr/lib
+ LINK_COMMAND += -Wl,+b$(PEGASUS_DEST_LIB_DIR):/usr/$(PEGASUS_ARCH_LIB_DIR)
ifeq ($(PEGASUS_PLATFORM), HPUX_PARISC_ACC)
- LINK_COMMAND += -Wl,+cdp,$(PEGASUS_PLATFORM_SDKROOT)/usr/lib:/usr/lib -Wl,+cdp,$(PEGASUS_HOME)/lib:$(PEGASUS_DEST_LIB_DIR)
+ LINK_COMMAND += -Wl,+cdp,$(PEGASUS_PLATFORM_SDKROOT)/usr/$(PEGASUS_ARCH_LIB_DIR):/usr/$(PEGASUS_ARCH_LIB_DIR) -Wl,+cdp,$(PEGASUS_HOME)/$(PEGASUS_ARCH_LIB_DIR):$(PEGASUS_DEST_LIB_DIR)
endif
else
- LINK_COMMAND += -Wl,+b$(LIB_DIR):/usr/lib
+ LINK_COMMAND += -Wl,+b$(LIB_DIR):/usr/$(PEGASUS_ARCH_LIB_DIR)
endif
endif
LINK_COMMAND += -Wl,+s
@@ -164,3 +164,5 @@
ln -f -s $(LIBRARY)$(SUFFIX) $(LIBRARY).$(PLATFORM_SUFFIX)
FILES_TO_CLEAN = $(OBJECTS) $(FULL_LIB)
+
+include $(ROOT)/mak/install-library-unix.mak
--- pegasus-2.5/rpm/wbem.redhat 2003-03-13 12:25:15.000000000 -0500
+++ pegasus-2.5/rpm/wbem 2005-10-03 12:29:48.000000000 -0400
@@ -1,13 +1,7 @@
#%PAM-1.0
-auth required /lib/security/pam_env.so
-auth sufficient /lib/security/pam_unix.so likeauth nullok
-auth required /lib/security/pam_deny.so
-
-account required /lib/security/pam_unix.so
-
-password required /lib/security/pam_cracklib.so retry=3 type=
-password sufficient /lib/security/pam_unix.so nullok use_authtok md5 shadow
-password required /lib/security/pam_deny.so
-
-session required /lib/security/pam_limits.so
-session required /lib/security/pam_unix.so
+auth required pam_stack.so service=system-auth
+account required pam_stack.so service=system-auth
+account required pam_access.so accessfile=/etc/Pegasus/access.conf
+password required pam_stack.so service=system-auth
+session required pam_stack.so service=system-auth
+session required pam_loginuid.so
--- pegasus-2.5/rpm/tog-pegasus.rc.redhat 2005-05-29 02:43:30.000000000 -0400
+++ pegasus-2.5/rpm/tog-pegasus.rc 2005-10-03 12:29:48.000000000 -0400
@@ -1,34 +1,28 @@
#! /bin/sh
-#//%2005////////////////////////////////////////////////////////////////////////
-#//
-#// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
-#// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
-#// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
-#// IBM Corp.; EMC Corporation, The Open Group.
-#// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
-#// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
-#// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
-#// EMC Corporation; VERITAS Software Corporation; The Open Group.
-#//
-#// Permission is hereby granted, free of charge, to any person obtaining a copy
-#// of this software and associated documentation files (the "Software"), to
-#// deal in the Software without restriction, including without limitation the
-#// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-#// sell copies of the Software, and to permit persons to whom the Software is
-#// furnished to do so, subject to the following conditions:
-#//
-#// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
-#// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
-#// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-#// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-#// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-#// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-#// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-#// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#//
-#//==============================================================================
-#//
-#//%/////////////////////////////////////////////////////////////////////////////
+#%/////////////////////////////////////////////////////////////////////////////
+#
+# Copyright (c) 2004 BMC Software, Hewlett-Packard Company, IBM,
+# The Open Group, Tivoli Systems
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
+# ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
+# "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
+# LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+#==============================================================================
+#
+#%/////////////////////////////////////////////////////////////////////////////
### BEGIN INIT INFO
# Provides: tog-pegasus
@@ -40,7 +34,10 @@
# Description: init script for Pegasus CIM server
### END INIT INFO
-CIMSERVER_BIN=/opt/tog-pegasus/sbin/cimserver
+CIMSERVER_BIN=/usr/sbin/cimserver
+PEGASUS_SSL_CERT_FILE=${PEGASUS_SSL_CERT_FILE:=server.pem}
+PEGASUS_SSL_KEY_FILE=${PEGASUS_SSL_KEY_FILE:=file.pem}
+PEGASUS_SSL_TRUSTSTORE=${PEGASUS_SSL_TRUSTSTORE:=client.pem}
prog=cimserver
test -x $CIMSERVER_BIN || exit 5
@@ -50,19 +47,22 @@
case "$1" in
start)
+ [ -e /var/run/tog-pegasus/cimxml.socket ] && rm -f /var/run/tog-pegasus/cimxml.socket
echo -n $"Starting up CIM server: "
+ if [ ! -e /etc/Pegasus/ssl.cnf ] || [ ! -e /etc/Pegasus/$PEGASUS_SSL_CERT_FILE ] || [ ! -e /etc/Pegasus/$PEGASUS_SSL_KEY_FILE ] || [ ! -e /etc/Pegasus/$PEGASUS_SSL_TRUSTSTORE ]; then
+ echo "Generating SSL certificates...";
+ /usr/share/Pegasus/scripts/genSSLcerts;
+ fi;
$CIMSERVER_BIN
RETVAL=$?
[ "$RETVAL" -eq 0 ] && log_success_msg $"$prog start" || log_failure_msg $"$prog start"
- echo
;;
-
stop)
echo -n $"Shutting down CIM server: "
killproc cimserver
RETVAL=$?
[ "$RETVAL" -eq 0 ] && log_success_msg $"$prog stop" || log_failure_msg $"$prog stop"
- echo
+ [ "$RETVAL" -eq 0 ] && [ -e /var/run/tog-pegasus/cimxml.socket ] && rm -f /var/run/tog-pegasus/cimxml.socket
;;
status)
pid=`pidofproc $CIMSERVER_BIN`
--- pegasus-2.5/src/Pegasus/ProviderManager2/tests/ProviderManagerModule/ProviderManagerModule.cpp.redhat 2005-04-18 17:18:24.000000000 -0400
+++ pegasus-2.5/src/Pegasus/ProviderManager2/tests/ProviderManagerModule/ProviderManagerModule.cpp 2005-10-03 12:29:48.000000000 -0400
@@ -134,7 +134,7 @@
int main(int argc, char** argv)
{
- const char * verbose = getenv("PEGASUS_TEST_VERBOSE");
+ const char * verbose = getenv("PEGASUS_TEST_VERBOSE"), *p;
const String FILE_NAME =
FileSystem::buildLibraryFileName("TestProviderManager");
@@ -146,7 +146,11 @@
#elif defined (PEGASUS_OS_VMS)
fileName= FILE_NAME;
#else
- fileName=String(getenv("PEGASUS_HOME"))+String("/lib/")+FILE_NAME;
+ fileName= String(getenv("PEGASUS_HOME"))
+ + String("/")
+ + String(((p = getenv("PEGASUS_ARCH_LIB_DIR")) == 0L) ? "lib" : p)
+ + String("/")
+ + FILE_NAME;
#endif
Test1();
--- pegasus-2.5/src/Pegasus/ProviderManager2/CMPI/samples/ProcessIndication/Makefile.redhat 2005-05-12 11:30:52.000000000 -0400
+++ pegasus-2.5/src/Pegasus/ProviderManager2/CMPI/samples/ProcessIndication/Makefile 2005-10-03 12:29:48.000000000 -0400
@@ -29,7 +29,7 @@
# Makefile for CMPIRT_SampleClass library
# Change the following lines to match the values on your system
-PEGDIRLIB=$(PEGASUS_HOME)/lib
+PEGDIRLIB=$(PEGASUS_HOME)/$(PEGASUS_ARCH_LIB_DIR)
# Changes shouldn't be necessary below this line
CFLAGS=-Wall -D_COMPILE_UNIX -g -I. -I../..
--- pegasus-2.5/src/Pegasus/Config/FixedPropertyTableLinux.h.redhat 2005-07-15 19:02:21.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Config/FixedPropertyTableLinux.h 2005-10-03 12:30:39.000000000 -0400
@@ -45,19 +45,19 @@
{"enableBinaryRepository", "false"},
#endif
#if defined(PEGASUS_USE_RELEASE_DIRS) && !defined(PEGASUS_OS_LSB)
- {"traceFilePath", "/var/opt/tog-pegasus/cache/trace/cimserver.trc"},
+ {"traceFilePath", "/var/lib/Pegasus/cache/cimserver.trc"},
#if !defined(PEGASUS_USE_SYSLOGS)
- {"logdir", "/var/opt/tog-pegasus/log"},
+ {"logdir", "/var/log/Pegasus"},
#endif
- {"passwordFilePath", "/etc/opt/tog-pegasus/cimserver.passwd"},
- {"sslCertificateFilePath", "/etc/opt/tog-pegasus/server.pem"},
- {"sslKeyFilePath", "/etc/opt/tog-pegasus/file.pem"},
- {"sslTrustStore", "/etc/opt/tog-pegasus/cimserver_trust"},
- {"exportSSLTrustStore", "/etc/opt/tog-pegasus/indication_trust"},
- {"crlStore", "/etc/opt/tog-pegasus/crl"},
- {"repositoryDir", "/var/opt/tog-pegasus/repository"},
- {"providerDir", "/opt/tog-pegasus/providers/lib:/usr/lib/cmpi"},
- {"messageDir", "/opt/tog-pegasus/share/locale/ICU_Messages"},
+ {"passwordFilePath", "/etc/Pegasus/cimserver.passwd"},
+ {"sslCertificateFilePath", "/etc/Pegasus/server.pem"},
+ {"sslKeyFilePath", "/etc/Pegasus/file.pem"},
+ {"sslTrustStore", "/etc/Pegasus/cimserver_trust"},
+ {"exportSSLTrustStore", "/etc/Pegasus/indication_trust"},
+ {"crlStore", "/etc/Pegasus/crl"},
+ {"repositoryDir", "/var/lib/Pegasus/repository"},
+ {"providerDir", PEGASUS_DEST_LIB_DIR "/Pegasus/providers"},
+ {"messageDir", "/usr/share/locale"},
#endif
#if defined(PEGASUS_USE_RELEASE_DIRS) && defined(PEGASUS_OS_LSB)
{"traceFilePath", "/var/opt/lsb-pegasus/cache/cimserver.trc"},
--- pegasus-2.5/src/Pegasus/Config/ConfigFileDirLinux.h.redhat 2005-02-05 18:00:07.000000000 -0500
+++ pegasus-2.5/src/Pegasus/Config/ConfigFileDirLinux.h 2005-10-03 12:29:48.000000000 -0400
@@ -37,12 +37,12 @@
/**
Default file name for the current configuration.
*/
-static char CURRENT_CONFIG_FILE [] = "/var/opt/tog-pegasus/cimserver_current.conf";
+static char CURRENT_CONFIG_FILE [] = "/etc/Pegasus/cimserver_current.conf";
/**
Default file name for the planned configuration.
*/
-static char PLANNED_CONFIG_FILE [] = "/var/opt/tog-pegasus/cimserver_planned.conf";
+static char PLANNED_CONFIG_FILE [] = "/etc/Pegasus/cimserver_planned.conf";
/**
Default file name for the cimserver startup file containing the PID.
--- pegasus-2.5/src/Pegasus/ControlProviders/CertificateProvider/Makefile.redhat 2005-05-12 11:29:46.000000000 -0400
+++ pegasus-2.5/src/Pegasus/ControlProviders/CertificateProvider/Makefile 2005-10-03 12:29:48.000000000 -0400
@@ -56,8 +56,8 @@
ifeq ($(OS),linux)
EXTRA_LIBRARIES += -lcrypt
ifdef PEGASUS_HAS_SSL
- EXTRA_LIBRARIES += -L$(OPENSSL_HOME)/lib -lssl -lcrypto
- EXTRA_LINK_ARGUMENTS = -Xlinker -rpath -Xlinker $(OPENSSL_HOME)/lib
+ EXTRA_LIBRARIES += -L$(OPENSSL_HOME)/$(PEGASUS_ARCH_LIB_DIR) -lssl -lcrypto
+ EXTRA_LINK_ARGUMENTS = -Xlinker -rpath -Xlinker $(OPENSSL_HOME)/$(PEGASUS_ARCH_LIB_DIR)
endif
endif
--- pegasus-2.5/src/Pegasus/Common/tests/DynLoad/Makefile.redhat 2005-05-12 11:28:46.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Common/tests/DynLoad/Makefile 2005-10-03 12:29:48.000000000 -0400
@@ -45,7 +45,7 @@
ifeq ($(PEGASUS_OS_TYPE),VMS)
$(PROGRAM) libTestDynLib
else
- $(PROGRAM) $(HOME_DIR)/lib/libTestDynLib$(LIB_SUFFIX)
+ $(PROGRAM) $(HOME_DIR)/$(PEGASUS_ARCH_LIB_DIR)/libTestDynLib$(LIB_SUFFIX)
endif
endif
--- pegasus-2.5/src/Pegasus/Common/MessageQueueService.cpp.redhat 2005-08-16 18:46:53.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Common/MessageQueueService.cpp 2005-10-03 12:29:48.000000000 -0400
@@ -68,7 +68,9 @@
#define MAX_THREADS_PER_SVC_QUEUE_LIMIT 5000
#define MAX_THREADS_PER_SVC_QUEUE_DEFAULT 5
-
+#ifndef MAX_THREADS_PER_SVC_QUEUE
+#define MAX_THREADS_PER_SVC_QUEUE MAX_THREADS_PER_SVC_QUEUE_DEFAULT
+#endif
Uint32 max_threads_per_svc_queue;
PEGASUS_THREAD_RETURN PEGASUS_THREAD_CDECL
--- pegasus-2.5/src/Pegasus/Common/Makefile.redhat 2005-06-12 18:31:19.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Common/Makefile 2005-10-03 12:29:48.000000000 -0400
@@ -165,8 +165,8 @@
ifeq ($(OS),linux)
EXTRA_LIBRARIES += -lcrypt
ifdef PEGASUS_HAS_SSL
- EXTRA_LIBRARIES += -L$(OPENSSL_HOME)/lib -lssl -lcrypto
- EXTRA_LINK_ARGUMENTS = -Xlinker -rpath -Xlinker $(OPENSSL_HOME)/lib
+ EXTRA_LIBRARIES += -L$(OPENSSL_HOME)/$(PEGASUS_ARCH_LIB_DIR) -lssl -lcrypto
+ EXTRA_LINK_ARGUMENTS = -Xlinker -rpath -Xlinker $(OPENSSL_HOME)/$(PEGASUS_ARCH_LIB_DIR)
endif
endif
@@ -206,11 +206,11 @@
ifeq ($(PEGASUS_PLATFORM),WIN32_IX86_MSVC)
SYS_LIBS = ws2_32.lib advapi32.lib netapi32.lib
ifdef PEGASUS_HAS_SSL
- SYS_LIBS += /libpath:$(OPENSSL_HOME)/lib libeay32.lib ssleay32.lib
+ SYS_LIBS += /libpath:$(OPENSSL_HOME)/$(PEGASUS_ARCH_LIB_DIR) libeay32.lib ssleay32.lib
endif
ifdef PEGASUS_WINDOWS_SDK_HOME
FLAGS += -DPEGASUS_WINDOWS_SDK_HOME
- SYS_LIBS += /libpath:$(PEGASUS_WINDOWS_SDK_HOME)/lib secur32.lib
+ SYS_LIBS += /libpath:$(PEGASUS_WINDOWS_SDK_HOME)/$(PEGASUS_ARCH_LIB_DIR) secur32.lib
else
ifneq ($(CL_MAJOR_VERSION), 12)
SYS_LIBS += secur32.lib
--- pegasus-2.5/src/Pegasus/Common/Constants.h.redhat 2005-07-27 17:02:36.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Common/Constants.h 2005-10-03 12:29:48.000000000 -0400
@@ -380,21 +380,21 @@
# define PEGASUS_PAM_STANDALONE_PROC_NAME "/opt/freeware/cimom/pegasus/bin/cimservera"
# elif defined(PEGASUS_OS_LINUX) && !defined(PEGASUS_OS_LSB)
# undef PEGASUS_SSLCLIENT_CERTIFICATEFILE
-# define PEGASUS_SSLCLIENT_CERTIFICATEFILE "/etc/opt/tog-pegasus/client.pem"
+# define PEGASUS_SSLCLIENT_CERTIFICATEFILE "/etc/Pegasus/client.pem"
# undef PEGASUS_SSLCLIENT_RANDOMFILE
-# define PEGASUS_SSLCLIENT_RANDOMFILE "/var/opt/tog-pegasus/ssl.rnd"
+# define PEGASUS_SSLCLIENT_RANDOMFILE "/var/lib/Pegasus/ssl.rnd"
# undef PEGASUS_SSLSERVER_RANDOMFILE
-# define PEGASUS_SSLSERVER_RANDOMFILE "/var/opt/tog-pegasus/cimserver.rnd"
+# define PEGASUS_SSLSERVER_RANDOMFILE "/var/lib/Pegasus/cimserver.rnd"
# undef PEGASUS_LOCAL_AUTH_DIR
-# define PEGASUS_LOCAL_AUTH_DIR "/var/opt/tog-pegasus/cache/localauth"
+# define PEGASUS_LOCAL_AUTH_DIR "/var/lib/Pegasus/cache/localauth"
# undef PEGASUS_LOCAL_DOMAIN_SOCKET_PATH
-# define PEGASUS_LOCAL_DOMAIN_SOCKET_PATH "/var/run/tog-pegasus/socket/cimxml.socket"
+# define PEGASUS_LOCAL_DOMAIN_SOCKET_PATH "/var/run/tog-pegasus/cimxml.socket"
# undef PEGASUS_CORE_DIR
-# define PEGASUS_CORE_DIR "/var/opt/tog-pegasus/cache"
+# define PEGASUS_CORE_DIR "/var/lib/Pegasus/cache"
# undef PEGASUS_PAM_STANDALONE_PROC_NAME
-# define PEGASUS_PAM_STANDALONE_PROC_NAME "/opt/tog-pegasus/sbin/cimservera"
+# define PEGASUS_PAM_STANDALONE_PROC_NAME "/usr/sbin/cimservera"
# undef PEGASUS_PROVIDER_AGENT_PROC_NAME
-# define PEGASUS_PROVIDER_AGENT_PROC_NAME "/opt/tog-pegasus/sbin/cimprovagt"
+# define PEGASUS_PROVIDER_AGENT_PROC_NAME "/usr/sbin/cimprovagt"
# elif defined(PEGASUS_OS_LSB)
# define PEGASUS_SSLCLIENT_CERTIFICATEFILE "/etc/opt/lsb-pegasus/client.pem"
# undef PEGASUS_SSLCLIENT_RANDOMFILE
--- pegasus-2.5/src/Pegasus/Common/System.cpp.redhat 2005-06-06 10:27:55.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Common/System.cpp 2005-10-03 12:29:48.000000000 -0400
@@ -144,13 +144,13 @@
char *System::extract_file_path(const char *fullpath, char *dirname)
{
char *p;
- char buff[2048];
+ char buff[PEGASUS_PATH_MAX];
if (fullpath == NULL)
{
dirname[0] = '\0';
return dirname;
}
- strcpy(buff, fullpath);
+ strncpy(buff, fullpath, PEGASUS_PATH_MAX);
for(p = buff + strlen(buff); p >= buff; p--)
{
if (*p == '\\' || *p == '/')
--- pegasus-2.5/src/Pegasus/Common/Platform_LINUX_IX86_GNU.h.redhat 2005-02-26 00:22:13.000000000 -0500
+++ pegasus-2.5/src/Pegasus/Common/Platform_LINUX_IX86_GNU.h 2005-10-03 12:29:48.000000000 -0400
@@ -72,9 +72,12 @@
#include <stdio.h>
#include <stdlib.h>
#include <sys/param.h> // For MAXHOSTNAMELEN
-
+#include <limits.h> // For _POSIX_HOST_NAME_LEN
#if defined(PEGASUS_OS_LSB) && !defined(MAXHOSTNAMELEN)
-#define PEGASUS_MAXHOSTNAMELEN 64
+#if defined(_POSIX_HOST_NAME_MAX)
+#define PEGASUS_MAXHOSTNAMELEN (_POSIX_HOST_NAME_MAX+1)
+#else
+#define PEGASUS_MAXHOSTNAMELEN 256
+#endif
#endif
-
#endif /* Pegasus_Platform_LINUX_IX86_GNU_h */
--- pegasus-2.5/src/Pegasus/Common/SystemUnix.cpp.redhat 2005-07-19 15:31:26.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Common/SystemUnix.cpp 2005-10-03 12:29:48.000000000 -0400
@@ -566,7 +566,7 @@
if ((he = gethostbyname (hostName)))
{
- strcpy (hostName, he->h_name);
+ strncpy (hostName, he->h_name, PEGASUS_MAXHOSTNAMELEN);
}
#if defined(PEGASUS_OS_OS400)
--- pegasus-2.5/src/Pegasus/Common/Config.h.redhat 2005-05-05 14:18:42.000000000 -0400
+++ pegasus-2.5/src/Pegasus/Common/Config.h 2005-10-03 12:29:48.000000000 -0400
@@ -182,6 +182,13 @@
#define PEGASUS_MAXHOSTNAMELEN MAXHOSTNAMELEN
#endif
+#ifndef PEGASUS_PATH_MAX
+#ifndef PATH_MAX
+#define PEGASUS_PATH_MAX 4096
+#else
+#define PEGASUS_PATH_MAX PATH_MAX
+#endif
+#endif
#ifdef __cplusplus
PEGASUS_NAMESPACE_BEGIN
--- pegasus-2.5/src/Providers/ManagedSystem/ComputerSystem/ComputerSystem_Linux.cpp.redhat 2005-03-02 13:17:32.000000000 -0500
+++ pegasus-2.5/src/Providers/ManagedSystem/ComputerSystem/ComputerSystem_Linux.cpp 2005-10-03 12:29:48.000000000 -0400
@@ -310,7 +310,7 @@
he=gethostbyname(hostName);
if (he)
{
- strcpy(hostName, he->h_name);
+ strncpy(hostName, he->h_name, PEGASUS_MAXHOSTNAMELEN);
}
_hostName.assign(hostName);
--- pegasus-2.5/src/Providers/ManagedSystem/OperatingSystem/OperatingSystem_Linux.cpp.redhat 2005-02-05 18:01:03.000000000 -0500
+++ pegasus-2.5/src/Providers/ManagedSystem/OperatingSystem/OperatingSystem_Linux.cpp 2005-10-03 12:29:48.000000000 -0400
@@ -172,7 +172,7 @@
he=gethostbyname(hostName);
if (he)
{
- strcpy(hostName, he->h_name);
+ strncpy(hostName, he->h_name, PEGASUS_MAXHOSTNAMELEN);
}
csName.assign(hostName);
--- pegasus-2.5/src/Providers/ManagedSystem/Process/Process_Linux.cpp.redhat 2005-07-15 16:46:54.000000000 -0400
+++ pegasus-2.5/src/Providers/ManagedSystem/Process/Process_Linux.cpp 2005-10-03 12:29:48.000000000 -0400
@@ -782,7 +782,7 @@
he=gethostbyname(hostName);
if (he)
{
- strcpy(hostName, he->h_name);
+ strncpy(hostName, he->h_name, PEGASUS_MAXHOSTNAMELEN);
}
csName.assign(hostName);
--- pegasus-2.5/src/Clients/repupgrade/RepositoryUpgrade.cpp.redhat 2005-06-03 16:04:34.000000000 -0400
+++ pegasus-2.5/src/Clients/repupgrade/RepositoryUpgrade.cpp 2005-10-03 12:29:48.000000000 -0400
@@ -2075,7 +2075,7 @@
fileName = _pegasusHome + "/bin/" +
FileSystem::buildLibraryFileName(moduleName);
#else
- fileName = _pegasusHome + "/lib/" +
+ fileName = _pegasusHome + PEGASUS_DEST_LIB_DIR +
FileSystem::buildLibraryFileName(moduleName);
#endif

View File

@ -1 +1 @@
303eef5aeb5b2156467a382911467bba tog-pegasus-2.4.1-1.tar.gz
0b068fd576f199f8a0946e2f659acfe4 pegasus-2.5.tar.gz

View File

@ -139,7 +139,7 @@ chmod 750 $RPM_BUILD_ROOT/${PEGASUS_PRODSHARE_DIR}/scripts/genSSLcerts
%attr(0755,root,pegasus) /usr/%{_lib}/Pegasus/providers/*.so.*
/usr/share/Pegasus/mof
%dir /usr/share/Pegasus/scripts
%attr(0755),root,pegasus) /usr/share/Pegasus/scripts/genSSLcerts
%attr(0755,root,pegasus) /usr/share/Pegasus/scripts/genSSLcerts
/usr/share/man/man*/*
%doc doc/license.txt doc/Admin_Guide_Release.pdf doc/README.RedHat.Security doc/SecurityGuidelinesForDevelopers.html doc/PegasusSSLGuidelines.htm doc/MessageQueueService.html doc/ProviderLoading.txt