rpms/znc/devel znc-trafficstats.patch,NONE,1.1 znc.spec,1.42,1.43

Nick Bebout nb at fedoraproject.org
Wed Jun 16 21:57:20 UTC 2010


Author: nb

Update of /cvs/pkgs/rpms/znc/devel
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv23370

Modified Files:
	znc.spec 
Added Files:
	znc-trafficstats.patch 
Log Message:
Backport r2026 of ZNC subversion repo to fix bug 603915
znc: NULL pointer dereference flaw leads to segfault under certain conditions



znc-trafficstats.patch:
 znc.cpp |   20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

--- NEW FILE znc-trafficstats.patch ---
--- znc-0.090/znc.cpp	2010-05-10 12:45:15.000000000 -0500
+++ trunk/znc.cpp	2010-06-16 16:43:48.706323545 -0500
@@ -1914,18 +1914,18 @@
 	}
 
 	for (CSockManager::const_iterator it = m_Manager.begin(); it != m_Manager.end(); ++it) {
+		CUser *pUser = NULL;
 		if ((*it)->GetSockName().Left(5) == "IRC::") {
-			CIRCSock *p = (CIRCSock *) *it;
-			ret[p->GetUser()->GetUserName()].first  += p->GetBytesRead();
-			ret[p->GetUser()->GetUserName()].second += p->GetBytesWritten();
-			uiUsers_in  += p->GetBytesRead();
-			uiUsers_out += p->GetBytesWritten();
+			pUser = ((CIRCSock *) *it)->GetUser();
 		} else if ((*it)->GetSockName().Left(5) == "USR::") {
-			CClient *p = (CClient *) *it;
-			ret[p->GetUser()->GetUserName()].first  += p->GetBytesRead();
-			ret[p->GetUser()->GetUserName()].second += p->GetBytesWritten();
-			uiUsers_in  += p->GetBytesRead();
-			uiUsers_out += p->GetBytesWritten();
+			pUser = ((CClient*) *it)->GetUser();
+		}
+
+		if (pUser) {
+			ret[pUser->GetUserName()].first  += (*it)->GetBytesRead();
+			ret[pUser->GetUserName()].second += (*it)->GetBytesWritten();
+			uiUsers_in  += (*it)->GetBytesRead();
+			uiUsers_out += (*it)->GetBytesWritten();
 		} else {
 			uiZNC_in  += (*it)->GetBytesRead();
 			uiZNC_out += (*it)->GetBytesWritten();


Index: znc.spec
===================================================================
RCS file: /cvs/pkgs/rpms/znc/devel/znc.spec,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -p -r1.42 -r1.43
--- znc.spec	7 Jun 2010 00:09:35 -0000	1.42
+++ znc.spec	16 Jun 2010 21:57:20 -0000	1.43
@@ -2,11 +2,12 @@ Summary:        An advanced IRC bouncer
 Name:           znc
 Version:        0.090
 #Release:        0.1.rc1%{?dist}
-Release:        1%{?dist}
+Release:        2%{?dist}
 License:        GPLv2 with exceptions
 Group:          System Environment/Daemons
 URL:            http://znc.sf.net/
 Source0:        http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
+Patch0:         znc-trafficstats.patch
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root
 BuildRequires:  perl gcc-c++
@@ -40,6 +41,7 @@ Extra modules for ZNC
 
 %prep
 %setup -q
+%patch0 -p1
 %__perl -pi.add_release -e 's|(?<="ZNC \%1\.3f)|-%{release}|' znc.cpp
 chmod -x modules/q.cpp
 
@@ -128,6 +130,9 @@ chmod -x modules/q.cpp
 %{_libdir}/znc/shell.so
 
 %changelog
+* Wed Jun 16 2010 Nick Bebout <nb at fedoraproject.org> - 0.090-2
+- Backport r2026 of ZNC subversion repo to fix
+- Bug 603915  - znc: NULL pointer dereference flaw leads to segfault under certain conditions
 * Sun Jun 06 2010 Nick Bebout <nb at fedoraproject.org> - 0.090-1
 - Update to znc 0.090
 



More information about the scm-commits mailing list