Hi Andy, to set it to zero is not a solution because you don't want to loose the static client ID. I think it should be once set and never touched again. Cheers Andreas. On Fri, Sep 17, 2010 at 9:12 PM, Andrew Hanushevsky <[log in to unmask]>wrote: > Hi Andreas, > > Thanks for pointing that out. Another solution is to set statisID to zero > to avoid the double-free. Hmmm, never got into a situation of a double > hand-shake. > > Andy > > > On Fri, 17 Sep 2010, Andreas-Joachim Peters wrote: > > Hi, >> >> I get SEGVs using XrdSecsss with the origin in the Deletion function: >> >> >> char *XrdSecProtocolsss::staticID = 0; >> >> void XrdSecProtocolsss::Delete() { >> .... >> if (staticID) free(staticID); >> >> } >> >> My understanding of the problem is the following: >> the staticID (for the client) is once set in the protocol initialization >> function, then it get's deleted after the first sss handshake. >> >> Whenever there is a second hanshake within the same application it SEGVs >> in >> the Delete function. >> So, I would just remove the free of the static member ?!?!? >> >> Cheers Andreas. >> >>