diff -ur root-6.06.02.orig/proof/proofx/inc/TXSocket.h root-6.06.02/proof/proofx/inc/TXSocket.h
--- root-6.06.02.orig/proof/proofx/inc/TXSocket.h 2016-03-03 10:36:03.000000000 +0100
+++ root-6.06.02/proof/proofx/inc/TXSocket.h 2016-04-03 11:21:57.879553149 +0200
@@ -43,8 +43,8 @@
#ifndef ROOT_TSocket
#include "TSocket.h"
#endif
-#ifndef ROOT_XrdProofConn
-#include "XrdProofConn.h"
+#ifndef __XPTYPES_H
+#include "XProtocol/XPtypes.hh"
#endif
#ifndef XRC_UNSOLMSG_H
#include "XrdClient/XrdClientUnsolMsg.hh"
@@ -58,6 +58,7 @@
class TXHandler;
class TXSocketHandler;
class XrdClientMessage;
+class XrdProofConn;
// To transmit info to Handlers
typedef struct {
@@ -140,7 +141,7 @@
void PostMsg(Int_t type, const char *msg = 0);
// Auxilliary
- Int_t GetLowSocket() const { return (fConn ? fConn->GetLowSocket() : -1); }
+ Int_t GetLowSocket() const;
static void SetLocation(const char *loc = ""); // Set location string
@@ -170,13 +171,13 @@
virtual Int_t GetClientID() const { return -1; }
virtual Int_t GetClientIDSize() const { return 1; }
- Int_t GetLogConnID() const { return (fConn ? fConn->GetLogConnID() : -1); }
- Int_t GetOpenError() const { return (fConn ? fConn->GetOpenError() : -1); }
- Int_t GetServType() const { return (fConn ? fConn->GetServType() : -1); }
- Int_t GetSessionID() const { return (fConn ? fConn->GetSessionID() : -1); }
+ Int_t GetLogConnID() const;
+ Int_t GetOpenError() const;
+ Int_t GetServType() const;
+ Int_t GetSessionID() const;
Int_t GetXrdProofdVersion() const { return fXrdProofdVersion; }
- Bool_t IsValid() const { return (fConn ? (fConn->IsValid()) : kFALSE); }
+ Bool_t IsValid() const;
Bool_t IsServProofd();
virtual void RemoveClientID() { }
virtual void SetClientID(Int_t) { }
@@ -215,11 +216,9 @@
void SendUrgent(Int_t type, Int_t int1, Int_t int2);
// Interrupt the low level socket
- inline void SetInterrupt(Bool_t i = kTRUE) { R__LOCKGUARD(fAMtx);
- fRDInterrupt = i;
- if (i && fConn) fConn->SetInterrupt();
- if (i && fAWait) fASem.Post(); }
+ void SetInterrupt(Bool_t i = kTRUE);
inline Bool_t IsInterrupt() { R__LOCKGUARD(fAMtx); return fRDInterrupt; }
+
// Set / Check async msg queue waiting status
inline void SetAWait(Bool_t w = kTRUE) { R__LOCKGUARD(fAMtx); fAWait = w; }
inline Bool_t IsAWait() { R__LOCKGUARD(fAMtx); return fAWait; }
diff -ur root-6.06.02.orig/proof/proofx/src/TXProofMgr.cxx root-6.06.02/proof/proofx/src/TXProofMgr.cxx
--- root-6.06.02.orig/proof/proofx/src/TXProofMgr.cxx 2016-03-03 10:36:03.000000000 +0100
+++ root-6.06.02/proof/proofx/src/TXProofMgr.cxx 2016-04-03 11:09:26.464327948 +0200
@@ -40,6 +40,8 @@
#include "TSysEvtHandler.h"
#include "XProofProtocol.h"
+#include "XrdProofConn.h"
+
ClassImp(TXProofMgr)
//
diff -ur root-6.06.02.orig/proof/proofx/src/TXSocket.cxx root-6.06.02/proof/proofx/src/TXSocket.cxx
--- root-6.06.02.orig/proof/proofx/src/TXSocket.cxx 2016-03-03 10:36:03.000000000 +0100
+++ root-6.06.02/proof/proofx/src/TXSocket.cxx 2016-04-03 11:58:23.937790633 +0200
@@ -912,6 +912,46 @@
}
////////////////////////////////////////////////////////////////////////////////
+/// Getter for logical connection ID
+
+Int_t TXSocket::GetLogConnID() const
+{
+ return (fConn ? fConn->GetLogConnID() : -1);
+}
+
+////////////////////////////////////////////////////////////////////////////////
+/// Getter for last error
+
+Int_t TXSocket::GetOpenError() const
+{
+ return (fConn ? fConn->GetOpenError() : -1);
+}
+
+////////////////////////////////////////////////////////////////////////////////
+/// Getter for server type
+
+Int_t TXSocket::GetServType() const
+{
+ return (fConn ? fConn->GetServType() : -1);
+}
+
+////////////////////////////////////////////////////////////////////////////////
+/// Getter for session ID
+
+Int_t TXSocket::GetSessionID() const
+{
+ return (fConn ? fConn->GetSessionID() : -1);
+}
+
+////////////////////////////////////////////////////////////////////////////////
+/// Getter for validity status
+
+Bool_t TXSocket::IsValid() const
+{
+ return (fConn ? (fConn->IsValid()) : kFALSE);
+}
+
+////////////////////////////////////////////////////////////////////////////////
/// Return kTRUE if the remote server is a 'proofd'
Bool_t TXSocket::IsServProofd()
@@ -1633,6 +1673,16 @@
}
////////////////////////////////////////////////////////////////////////////////
+
+void TXSocket::SetInterrupt(Bool_t i)
+{
+ R__LOCKGUARD(fAMtx);
+ fRDInterrupt = i;
+ if (i && fConn) fConn->SetInterrupt();
+ if (i && fAWait) fASem.Post();
+}
+
+////////////////////////////////////////////////////////////////////////////////
/// Send a TMessage object. Returns the number of bytes in the TMessage
/// that were sent and -1 in case of error.
@@ -1923,6 +1973,12 @@
}
////////////////////////////////////////////////////////////////////////////////
+
+Int_t TXSocket::GetLowSocket() const {
+ return (fConn ? fConn->GetLowSocket() : -1);
+}
+
+////////////////////////////////////////////////////////////////////////////////
/// Init environment variables for XrdClient
void TXSocket::InitEnvs()