Changeset - 794b2dbaa084
[Not reviewed]
Merge
0 2 0
Vitaly Takmazov - 14 years ago 2011-12-08 12:29:05
vitalyster@gmail.com
Merge branch 'master' of https://github.com/hanzz/libtransport
2 files changed with 14 insertions and 5 deletions:
0 comments (0 inline, 0 general)
spectrum/src/main.cpp
Show inline comments
 
@@ -211,6 +211,7 @@ int main(int argc, char **argv)
 
		return 1;
 
	}
 

	
 
#ifndef WIN32
 
	if (!CONFIG_STRING(&config, "service.group").empty() ||!CONFIG_STRING(&config, "service.user").empty() ) {
 
		struct group *gr;
 
		if ((gr = getgrnam(CONFIG_STRING(&config, "service.group").c_str())) == NULL) {
 
@@ -225,7 +226,6 @@ int main(int argc, char **argv)
 
		chown(CONFIG_STRING(&config, "service.working_dir").c_str(), pw->pw_uid, gr->gr_gid);
 
	}
 

	
 
#ifndef WIN32
 
	if (!no_daemon) {
 
		// daemonize
 
		daemonize(CONFIG_STRING(&config, "service.working_dir").c_str(), CONFIG_STRING(&config, "service.pidfile").c_str());
 
@@ -260,7 +260,7 @@ int main(int argc, char **argv)
 
		std::string dir;
 
		BOOST_FOREACH(const log4cxx::LogString &prop, p.propertyNames()) {
 
			if (boost::ends_with(prop, ".File")) {
 
				dir = p.get(prop);
 
				log4cxx::helpers::Transcoder::encode(p.get(prop), dir);
 
				boost::replace_all(dir, "${jid}", jid);
 
				break;
 
			}
src/rostermanager.cpp
Show inline comments
 
@@ -116,6 +116,8 @@ void RosterManager::sendBuddyRosterPush(Buddy *buddy) {
 

	
 
	payload->addItem(item);
 

	
 
	// In server mode we have to send pushes to all resources, but in gateway-mode we send it only to bare JID
 
	if (m_component->inServerMode()) {
 
		std::vector<Swift::Presence::ref> presences = m_component->getPresenceOracle()->getAllPresence(m_user->getJID().toBare());
 
		BOOST_FOREACH(Swift::Presence::ref presence, presences) {
 
			Swift::SetRosterRequest::ref request = Swift::SetRosterRequest::create(payload, presence->getFrom(), m_component->getIQRouter());
 
@@ -124,6 +126,13 @@ void RosterManager::sendBuddyRosterPush(Buddy *buddy) {
 
			m_requests.push_back(request);
 
		}
 
	}
 
	else {
 
		Swift::SetRosterRequest::ref request = Swift::SetRosterRequest::create(payload, m_user->getJID().toBare(), m_component->getIQRouter());
 
		request->onResponse.connect(boost::bind(&RosterManager::handleBuddyRosterPushResponse, this, _1, request, buddy->getName()));
 
		request->send();
 
		m_requests.push_back(request);
 
	}
 
}
 

	
 
void RosterManager::sendBuddySubscribePresence(Buddy *buddy) {
 
	Swift::Presence::ref response = Swift::Presence::create();
 
@@ -332,8 +341,8 @@ void RosterManager::handleSubscription(Swift::Presence::ref presence) {
 
	else {
 
		Swift::Presence::ref response = Swift::Presence::create();
 
		Swift::Presence::ref currentPresence;
 
		response->setTo(presence->getFrom());
 
		response->setFrom(presence->getTo());
 
		response->setTo(presence->getFrom().toBare());
 
		response->setFrom(presence->getTo().toBare().toString() + "/bot");
 

	
 
		Buddy *buddy = getBuddy(Buddy::JIDToLegacyName(presence->getTo()));
 
		if (buddy) {
 
@@ -355,7 +364,7 @@ void RosterManager::handleSubscription(Swift::Presence::ref presence) {
 
					break;
 
				// just send response
 
				case Swift::Presence::Unsubscribed:
 
// 					response->setType(Swift::Presence::Unsubscribe);
 
					response->setType(Swift::Presence::Unsubscribe);
 
					break;
 
				default:
 
					return;
0 comments (0 inline, 0 general)