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. >