[root] / trunk / net / net / src / TPSocket.cxx Repository:
ViewVC logotype

Log of /trunk/net/net/src/TPSocket.cxx

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 48992 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Mar 28 15:26:26 2013 UTC (21 months, 3 weeks ago) by rdm
File length: 25663 byte(s)
Diff to previous 39696
From Lifeng Sun:
The attached patchset fixes a bunch of typo in the source:
0001-succes-success.patch
0002-preceed-preced.patch
0003-informations-information.patch
0004-childs-children.patch
0005-avaliable-available.patch
0006-writeable-writable.patch
0007-comand-command.patch
0008-unkown-unknown.patch
0009-wierd-weird.patch
0010-wheter-whether.patch
0011-unecessary-unnecessary.patch
0012-splitted-split.patch
0013-registerd-registered.patch
0014-recieve-receive.patch
0015-processsing-processing.patch
0016-ouput-output.patch
0017-mutiple-multiple.patch
0018-lenght-length.patch
0019-interupted-interrupted.patch
0020-independant-independent.patch
0021-inconsistant-inconsistent.patch
0022-expresion-expression.patch
0023-explicitely-explicitly.patch
0024-enviroment-environment.patch
0025-deafult-default.patch
0026-continous-continuous.patch
0027-completly-completely.patch
0028-commited-committed.patch
0029-choosen-chosen.patch
0030-backgroud-background.patch
0031-auxilliary-auxiliary.patch
0032-authentification-authentication.patch
0033-appropiate-appropriate.patch
0034-an-other-another.patch
0035-environement-environment.patch
0036-targetting-targeting.patch
0037-suppported-supported.patch
0038-paramater-parameter.patch

Revision 39696 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jun 13 21:35:34 2011 UTC (3 years, 7 months ago) by pcanal
File length: 25664 byte(s)
Diff to previous 38222
From David Dagenhart:

Implement an option to allow ROOT to use the LZMA compression
algorithm to compress data instead of the ZLIB compression algorithm.
LZMA compression typically results in smaller files, but takes more
CPU time to compress data. To use the new feature, the external XZ
package must be installed when ROOT is configured and built:

Download 5.0.3 from here http://tukaani.org/xz/
and make sure to configure with fPIC:
   ./configure CFLAGS='-fPIC'

Then the client C++ code must call routines to explicitly request LZMA
compression.

ZLIB compression is still the default.

Setting the Compression Level and Algorithm:

There are three equivalent ways to set the compression level and 
algorithm. For example, to set the compression to the LZMA algorithm
and compression level 5.

1. TFile f(filename, option, title);
   f.SetCompressionSettings(ROOT::CompressionSettings(ROOT::kLZMA, 5));

OR

2. TFile f(filename, option, title, ROOT::CompressionSettings(ROOT::kLZMA, 5));

OR

3. TFile f(filename, option, title);
   f.SetCompressionAlgorithm(ROOT::kLZMA);
   f.SetCompressionLevel(5);

These methods work for TFile, TBranch, TMessage, TSocket, and TBufferXML. 
The compression algorithm and level settings only affect compression of
data after they have been set. TFile passes its settings to its branches 
only at the time the branches are created. This can be overidden by 
explicitly setting the level and algorithm for the branch. These classes 
also have the following methods to access the algorithm and level for 
compression.

   Int_t GetCompressionAlgorithm() const;
   Int_t GetCompressionLevel() const;
   Int_t GetCompressionSettings() const;

If the compression level is set to 0, then no compression will be
done. All of the currently supported algorithms allow the level to be
set to any value from 1 to 9. The higher the level, the larger the
compression factors will be (smaller compressed data size). The
tradeoff is that for higher levels more CPU time is used for
compression and possibly more memory. The ZLIB algorithm takes less
CPU time during compression than the LZMA algorithm, but the LZMA
algorithm usually delivers higher compression factors.

The header file core/zip/inc/Compression.h declares the function
"CompressionSettings" and the enumeration for the algorithms.
Currently the following selections can be made for the algorithm:
kZLIB (1), kLZMA (2), kOldCompressionAlgo (3), and kUseGlobalSetting
(0). The last option refers to an older interface used to control the
algorithm that is maintained for backward compatibility. The following
function is defined in core/zip/inc/Bits.h and it set the global
variable.

   R__SetZipMode(int algorithm)

If the algorithm is set to kUseGlobalSetting (0), the global variable
controls the algorithm for compression operations.  This is the
default and the default value for the global variable is kZLIB.

Note that the LZMA algorithm will only be available if the LZMA
libraries from the XZ package were available when the ROOT executable
being used was configured and built. If you are building ROOT and want
LZMA then you must do something similar to the following if XZ is not
already installed on your system.

  Download XZ version 5.0.3 from http://tukaani.org/xz/
  unwind the tarball
  cd xz-5.0.3
  ./configure CFLAGS='-fPIC'
  make

ROOT was tested with version 5.0.3 of XZ.  It might work with earlier
versions and will probably work with later versions of XZ.

Then either use "make install" to put the library and headers into
/usr/local/* so the scripts building ROOT can find them or use
arguments to the ROOT configure script to point to the proper
directories containing the XZ library and headers. These are the
library and the included header (lzma.h includes other headers in the
lzma subdirectory).

  src/liblzma/.libs/liblzma.a
  src/liblzma/api/lzma.h

WARNING: Data compressed with the LZMA algorithm cannot be read by
ROOT executables that were not built with LZMA support.

Revision 38222 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Feb 25 11:26:38 2011 UTC (3 years, 10 months ago) by rdm
File length: 25646 byte(s)
Diff to previous 38221
add some explicit braces to fix compiler warnings.

Revision 38221 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Feb 25 10:26:55 2011 UTC (3 years, 10 months ago) by rdm
File length: 25618 byte(s)
Diff to previous 24480
From Gerri:
Few fixes to improve/reduce verbosity in case of connection broken or
reset by peer
- In TSocket:
  - Add bit  kBrokenConn and set it when the connection is broken or reset
    by peer
  - Add missing checks of return codes from Send and Recv operations
  - In CreateAuthSocket, add an optional argument to extract the error code
    in case of failure; set the error to kErrConnectionRefused when the
    failure is due to a broken or reset by peer connection.
- In TPSocket:
  - Add bit  kBrokenConn and set it when the connection is broken or reset
    by peer
  - Add missing checks of return codes from Send and Recv operations
  - In the main constructor, fix a bug causing a double connection attempt
    in case of failure
- In TNetFile:
  - Extract a more correct error code via CreateAuthSocket instead of
    setting the generic authentication error code
  - Fix a typo in a error message
- In TNetSystem:
  - Fix a bug in ConsistentWith causing always a new helper (and connection)
    instance to be created when repeating the request with the same path.

Revision 24480 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jun 23 13:29:34 2008 UTC (6 years, 7 months ago) by rdm
File length: 25102 byte(s)
Diff to previous 23091
move the send streamer info and send process id code into:
    SendStreamerInfos()
    SendProcessIDs()
move the recv streamer info and recv process id code into:
    RecvStreamerInfos()
    RecvProcessIDs()
Add support for schema evolution and process ids also to TPSocket and
TXSocket.

Revision 23091 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 9 15:04:27 2008 UTC (6 years, 9 months ago) by rdm
File length: 24749 byte(s)
Copied from: trunk/net/src/TPSocket.cxx revision 23090
Diff to previous 20882
moving the follwing directories to "net":

alien, auth, glite, globusauth, krb5auth, ldap, monalisa, net, netx,
rootd, rpdutils, srputils, xrootd

Revision 20882 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 19 11:31:26 2007 UTC (7 years, 2 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 24749 byte(s)
Diff to previous 19826
Set property svn:eol-style LF on all source and Makefiles. This should avoid
problems with Win32 line endings ending up in the repository. All MS tools
support LF eols fine.

Revision 19826 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:56:11 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 24749 byte(s)
Diff to previous 19825
imported svn:keywords Id property

Revision 19825 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:49:10 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 24800 byte(s)
Diff to previous 15057
remove :$ from tag line

Revision 15057 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 16 06:28:23 2006 UTC (8 years, 8 months ago) by brun
Original Path: trunk/net/src/TPSocket.cxx
File length: 24810 byte(s)
Diff to previous 12128
Fix coding conventions violations

Revision 12128 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jun 23 06:24:27 2005 UTC (9 years, 7 months ago) by brun
Original Path: trunk/net/src/TPSocket.cxx
File length: 24813 byte(s)
Diff to previous 12127
From Constantin Loizides
Use global Mutex instead of class static member

Revision 12127 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jun 23 00:29:38 2005 UTC (9 years, 7 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 24838 byte(s)
Diff to previous 12123
cosmetics: remove <TABS> and change "const Char_t" back to "const char".

Revision 12123 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jun 22 20:18:12 2005 UTC (9 years, 7 months ago) by brun
Original Path: trunk/net/src/TPSocket.cxx
File length: 24810 byte(s)
Diff to previous 11687
From Constantin Loizides

This patch implements:
- decentralized, automatic mutex initialization,
  see R__LOCKGUARD2 in TVirtualMutex
- PROOF parallel startup fixes
- more thread protection (in base, cont, meta, rest to be done)
- cleanups

From Eddy Offermann:
TString::Atoi and Atof are made const.

Revision 11687 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 28 16:14:28 2005 UTC (9 years, 8 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 24529 byte(s)
Diff to previous 10798
From Gerri:
Patch introducing parallel startup of the slave servers. This new feature
will considerably reduce the startup time in PROOF setups with many 10's
to 100's of slaves. By default this feature is off, turn it on in the
[system].rootrc file by uncommenting the line:

Proof.ParallelStartup: yes

Summary of changes:

Index: Makefile

  - Add the thread lib to PROOFLIBS

Index: base/inc/TVirtualMutex.h, base/src/TVirtualMutex.cxx

  - Add global mutexes to protect printing and authentication

Index: base/src/TError.cxx

  - Protect static buffer in DebugPrint with specific global mutex

Index: config/Makefile.depend

  - Add dependence on thread lib for PROOF

Index: config/rootrc.in

  - Add description of new envs
      Proof.ParallelStartup, Auth.Timeout, ProofServ.UseSSH

Index: net/inc/TAuthenticate.h

  - Add new member fTimeout to indicate timeout situations
    and new method HasTimedOut() to retrieve it.
  - Add new static member with the timeout value in sec
    and method SetTimeOut() to set it
  - Add new method CatchTimeOut() called at timeout expiration


Index: net/inc/THostAuth.h , net/src/THostAuth.cxx

  - Add new method SetLast() to lower pririty of an attempted
    protocol that has timed-out


Index: net/src/TAuthenticate.cxx

  - Implementation of the new timeout setup using TTimer
  - Add protection using specific global mutex
  - change to start with lower case some local variables
    in Authenticate
  - re-introduce call to THostAuth::CountFailure() (which got
    lost in a previous patch)
  - Disable by default SSH for PROOF servers
  - fix a couple of small memory leaks

Index: net/src/TPSocket.cxx

  - Fix logic in Close() (if called too early (e.g. timeout)
    the underlying socket can still be open and needs to be
    closed).


Index: net/src/TSocket.cxx

  - initialize member fTcpWindowSize in all constructors
  - modify error logging after an unsuccessful authentication
    attempt, checking for timeouts.
  - disable SSH for PROOF servers

Index: proof/inc/TProof.h

  - patch for parallel startup using threads:
    - new methods SlaveStartupThread(void *) and
      SubmasterStartupThread(void *) executed in threads
    - add Bool_t argument to all implementations of StartSlaves

Index: proof/src/TProof.cxx

  - patch for parallel startup using threads:
    - add internal classes ProofThread and ProofThreadArg to keep
      track of started threads and to pass arguments to threads
  - cleanup fPlayer and fFeedBack in destructor

Index: rpdutils/src/rpdutils.cxx

  - fix small memory leak

Index: thread/src/TThread.cxx

  - initialize new global mutexes

Revision 10798 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Dec 15 17:48:03 2004 UTC (10 years, 1 month ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 24389 byte(s)
Diff to previous 10271
From Gerri:
Purpose:
 - Add new Select functionality in TMonitor and TSocket
   This functionality will be used for asyncronous threaded
   reader of TXNetFile.
 - Add support for creation of a TNetFile using an existing
   connection (reuse connection that was already opened by
   TXNetFile while remore side is rootd and not xrootd).

net/inc/TMonitor.h
 - add new private member Bool_t fMainLoop to tell if the
   monitoring has to be on the main loop or outside.
 - add argument 'Bool_t mainloop' to the constructor, default kTRUE
 - add new method SetInterest() to change interest mask of
   a socket
 - add new Select() method for the out-of-main-loop case

net/src/TMonitor.cxx
 - add implemention for the new methods.

net/inc/TNetFile.h
 - add new signature for method Create() to open a TNetFile
   using an existing connection (used to optmize the rootd
   fall back support in TXNetFile).

net/src/TNetFile.cxx
 - add support for new Create()

net/inc/TPSocket.h
 - add new constructor to setup a parallel socket using
   an existing connection (used to optmize the rootd
   fall back support in TXNetFile).
 - add support for new constructor in method Init()

net/src/TPSocket.cxx
 - add implentation of new ctor and related modifications
   in Init().

net/inc/TSocket.h
 - add new method Select() to monitor the socket outside
   the main event loop
 - add new method SetDescriptor() used in TXSocket to save
   the TSocket part
 - add new member fTcpWindowSize and corresponding getter
   for use in the new TPSocket ctor
 - add a 'TSocket *' argument to CreateAuthSocket (default 0)
   to allow re-using of an existing connection

net/src/TSocket.cxx
 - add new method Select() to monitor the socket outside
   the main event loop

Revision 10271 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Oct 11 12:34:34 2004 UTC (10 years, 3 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 20809 byte(s)
Diff to previous 8972
From Gerri:
Description: patch to support authentication in TServerSocket for
general server application based on ROOT.

New files:

- net/src/DaemonUtils.cxx, net/inc/DaemonUtils.h
  wrappers around server-side functions implemented in
  rpdutils/src/rpdutils.cxx

- rpdutils/inc/rpddefs.h
  common definitions previously in rpdp.h

- tutorials/authserv.C, tutorials/authclient.C
  macros to test authentication between to remote ROOT
  sessions; see macro headers for instructions.

Patched files:

config:
 - rootrc.in
   New envs (SrvAuth.<xxx>) to steer authentication in TServerSocket,
   reflecting the command lines options to rootd/proofd

globusauth/src:
 - GlobusAuth.cxx
   Few changes to cope with new socket "type" (i.e. non-rootd or proofd
   related).

net:
 - Module.mk
   Drop DaemonUtils from the list of sources to be compiled;
   add definition of DAEMONUTILSO used in rpdutils/Module.Mk

net/inc
 - LinkDef.h
   Add pragmas for global variables kSrvAuth and kSrvNoAuth, new options
   to TServerSocket::Accept
- NetErrors.h
  Add new error code kErrBadRTag to indicate unsuccessful verification of
  the random tag associated to a token or password exchange
- TPServerSocket.h
  Add option to method Accept()
- TServerSocket.h ...
  Add option to method Accept() and a few methods, to set, display and
  modify the defaults.
  Add hooks to authentication code and cleanup code.
  Add list of accepted authentication for cleanup at closing.
  Add cleanup call in destructor.
  Add new method Authenticate().

net/src:
 - NetErrors.cxx
   Add string for new errord code kErrBadRTag.
 - TAuthenticate.cxx
   Increase the client protocol number for backward compatibility.
   Add support for new server socket "type" sock.
   Add send of kROOTD_BYE after failures to avoid warning messages
   on the server side.
   Add signature of random tags in methods ClearAuth() (for passwords)
   and AuthExists (for tokens)
 - TPServerSocket.cxx
   Add support for authentication in Accept()
 - TPSocket.cxx
   Add check on the server socket type in constructor
 - TServerSocket.cxx
   Add support for authentication in Accept().
   Implement new method Authenticate() to run authentication; this method
   loads dynamically the new library libSrvAuth.so .
   Implement methods to manage options.
   Add cleanup call in destructor.
 - TSocket.cxx
   Add support for new server socket type in CreateAuthSocket().
   Improved parsing of protocol in CreateAuthSocket().
   Improved description in CreateAuthSocket header.

proofd/src:
 - proofd.cxx
   Add check on the return code of RpdInitSession.

rootd/src:
 - rootd.cxx
   Add check on the return code of RpdInitSession.

rpdutils:
 - Module.mk
   Add rules to build libSrvAuth.so

rpdutils/inc:
 - rpdp.h
   Move const definitions in rpddefs.h
   Include rpddefs.h
   Add new signature for RpdIntiSession to be used in DaemonUtils.cxx
   Add new method RpdSetMethInitFlag to reset from DaemonUtils.cxx
   Add new signature for RpdCleanupAuthTab to clean the entry related
   to a specified token (called by TServerSocket).
   Add return codes to all the authentication-relatd functions.

rpdutils/src:
 - rpdutils.cxx
   Add static method 'rpdmemset' cleanup properly buffers used
   for passwords, avoiding compiler optimizations.
   Add static method 'rpdcrypt' to provide some protection when
   crypt is not available (preparation for some support for win32gdk)
   Add pre-compiler variable R__NOCRYPT to treat those cases.
   Add implementation of new methods RpdSetMethInitFlag(int) and
   RpdCleanupAuthTab(const char *).
   Fix small problem in RpdCleanupAuthTab(const char *, int, int)
   for option 'all' causing partial cleanup.
   Add generation/ transmission/ check of a random tag in RpdUser and
   RpdCheckAuthTab.
   Make all authentication functions to return a code instead of
   void; drop all 'exit' calls.
   Add implementation of special RpdInitSession signature for TServerSocket

Revision 8972 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 18 22:20:49 2004 UTC (10 years, 8 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 20797 byte(s)
Diff to previous 8857
From Gerri:
The return of kinit was implicit checked by the subsequent
check valid credentials; I made it explicit.

However, the real problem was elsewhere: in TPSocket, in
case of failed authentication, I forgot to set a flag to
false, so it was trying Init() and hanging at
TServerSocket::Accept. This was introduced last week.

Revision 8857 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 10 16:00:02 2004 UTC (10 years, 8 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 20712 byte(s)
Diff to previous 8840
From Gerri:
This should fix the problem with double connection.
Crossed backward compatibility should be ok at least back to 3.05.07.
Also fixes problem with undefined fSecContext in SRPAuth and
Krb5Auth when talking to old servers.

Revision 8840 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 10 08:17:57 2004 UTC (10 years, 8 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 20445 byte(s)
Diff to previous 8805
remove R__zip and R__unzip external decl, not used here anymore.
correct some typos in comments.

Revision 8805 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu May 6 13:04:10 2004 UTC (10 years, 8 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 20464 byte(s)
Diff to previous 8795
From Gerri:
fix a problem with TPSockets, now tutorials pserv.C and pclient.C work
again.

Revision 8795 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 5 14:43:34 2004 UTC (10 years, 8 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 20255 byte(s)
Diff to previous 8617
allow TMessages to be compressed before sending them. To have a specific
message compressed use TMessage::SetCompressionLevel(n) where 0 < n <= 9,
like for TFile::SetCompressionLevel(). To have all messages send over
a specific TSocket compressed, use TSocket::SetCompressionLevel().
When a compressed message is received it is automatically uncompressed.
See modified tutorials/hclient.C on how this feature is used.

Revision 8617 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Apr 20 15:17:02 2004 UTC (10 years, 9 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 19948 byte(s)
Diff to previous 8420
From Gerri:
close socket on client side in case of failure due to
"Broken Pipe" (errno = EPIPE) or "Connection reset by peer"
(errno = ECONNRESET); this to avoid futher attempts
to use the socket and the related multiple-failure messages.
(unix/src/TUnixSystem.cxx, net/src/TSocket.cxx, net/src/TPSocket.cxx,
net/inc/TAuthenticate.h, net/src/TAuthenticate.cxx).

Revision 8420 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 17 17:52:24 2004 UTC (10 years, 10 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 19603 byte(s)
Diff to previous 8254
From Gerri:

Improvements:

  o Added support for creation of authentication tokens
    exclusive to parent daemon and its childs; by default
    tokens have inclusive nature, i.e. can be checked by another
    server on the same machine with having access to the key files
    (option -E to rootd/proofd)
  o Added support for non-standard file name for daemon access rules
    (option -D <rootdaemonrc> to rootd/proofd)
  o Added support for non-standard file name for authentication directives
    (PROOF only: option -A [<rootauthrc>] to proofd; see header of
     proofd/src/proofd.cxx)
  o Improved security in ssh authentications


Bug fixes:

  o Fix a few inconsistencies in treating error conditions
  o Fix bug with default init strings for ProxyDuration and ProxyKeyBits
  o Fix problem with checking for valid globus proxies
  o fixed message desynchronization problem in case of non valid offset
  o Modified error call in case of failure of Krb5 initialization:
    execution continues (call Err instead of ErrFatal)
  o Fix (again) problem with cygwingcc definition in rpdutils.cxx
  o Fix problem with fgUser not being correctly saved in case
    of successful authentication in TAuthenticate.cxx
  o Fix a problem with duplication in socket list (TPSocket)
  o Set fContext=0 after deletion TPwdCtx (in TSecContext::Deactivate).
  o Fix link problem with the globus patched function in rootd/Module.mk
    and proofd/Module.mk
  o Added function ProofdTerm (equivalent of RootdTerm) to terminate
    correctly in case of interrupting signal SIGTERM or SIGINT (proofd.cxx)
  o Fix several incorrect comments.

Revision 8254 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Feb 19 08:55:17 2004 UTC (10 years, 11 months ago) by brun
Original Path: trunk/net/src/TPSocket.cxx
File length: 19693 byte(s)
Diff to previous 8239
Fix a compiler bug on Solaris/CC
"net/src/TPSocket.cxx", line 119: Error: Cannot use const char* to initialize char*.

Revision 8239 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Feb 19 00:11:19 2004 UTC (10 years, 11 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 19686 byte(s)
Diff to previous 8063
Big authentication patch by Gerri:
General purpose:
Add support for 'authenticated' sockets on client side
and prepare for support of server authenticated sockets.

Main changes:

o TSocket, TPsocket:
  Added support of 'authenticated' sockets: authentication
  is delegated to TSocket by calling a static method
  CreateAuthSocket() returning a TSocket*.
  TSocket is now the only class calling TAuthenticate.

o TFTP, TNetFile, TSlave:
  modified to cope with new socket authentication scheme.

o TAuthDetails replaced by TSecContext containing:
  - local authentication info
  - expiration time
  - pointer to a security context for the method (if any)
  - information for cleanup (via TSecContextCleanup)

o A list of valid TSecContext has been added to TROOT,
  accessible via gROOT->GetListOfSecContexts().

o THostAuth rewritten using arrays to avoid multiple use
  of 'new'; functionality extended by the addition of
  several new methods.

o TAuthenticate:
  - Loading of information from .rootauthrc has been optimized;
    this allowed to simplify method signatures and drop several
    methods. Also collection and transmission of authentication
    information from TSlave to TProofServ gets simplified by the
    new scheme.
  - Added support for server dependent directives in .rootauthrc
  - Added check for changes in .rootauthrc each time a new
    TAuthenticate is instantiated, so that changes in the file
    are picked-up interactively.
  - Checking for an existing TSecContext (previously TAuthDetails)
    has been improved
  - Improved diagnostics for SshAuth
  - Enlarged support for authentication method indication in protocol:
       UsrPwd: rootup/proofup
          SRP: roots/proofs           (already supported)
         Krb5: rootk/proofk           (already supported)
       Globus: rootg/proofg
          SSH: rootsh/proofsh
       UigGid: rootug/proofug

o GlobusAuth.cxx, Krb5Auth.cxx, SRPAuth.cxx
  - Adapted to new class TSecContext
  - Added support for improved search for reusable TSecContext
  - Drop globals used to store established security contexts
    (saved in TSecContext) and related methods

o Automatic creation of <RootDir>/etc/system.rootauthrc from
  compilation flags; this has priority on old envs
  'Rootd.Authentication' and 'Proofd.Authentication' and is
  superseded by $HOME/.rootauthrc

o Automatic creation of <RootDir>/etc/system.authdaemonrc from
  compilation flags; this is superseded by $HOME/.rootauthrc

o rpdutils:
  - several almost identical methods moved in from rootd/proofd
  - several new methods to simplify manipulation of the
    authentication tab file
  - moved (and improved) check for running of sshd in RpdSshAuth,
    performed only in case of failure (to avoid spurious messages
    printed by sshd in /var/log/messages)

o proofd.cxx, rootd.cxx
  - increased protocol version
  - all initialization stuff (included authentication and
    login) done via RpdInitSession
  - postpone opening of parallels sockets after authentication
    (to solve problem of Kerberos/Globus authentication with
    parallel sockets)(rootd)
  - Fixed problem with kerberos and globus authentication in rootd
    with parallel sockets.

Revision 8063 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jan 28 10:00:52 2004 UTC (10 years, 11 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 16590 byte(s)
Diff to previous 1588
fix in Close() in case fSockets = 0 (can happen when initial socket connection
failed as observed in the ALICE data challenge).

Revision 1588 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Feb 12 14:31:17 2001 UTC (13 years, 11 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 16546 byte(s)
Diff to previous 1559
if SendRaw() returns with error -4 (EWOULDBLOCK) retry the sending.

Revision 1559 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Feb 8 16:09:49 2001 UTC (13 years, 11 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 16308 byte(s)
Diff to previous 1518
when using a single socket put it in non blocking mode.

Revision 1518 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Feb 3 14:36:31 2001 UTC (13 years, 11 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 16078 byte(s)
Diff to previous 1486
set correctly title and address of parallel socket.

Revision 1486 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jan 29 00:03:55 2001 UTC (13 years, 11 months ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 15994 byte(s)
Diff to previous 1479
introduce proper inheritance: TPServerSocket derives from TServerSocket and
TPSocket derives from TSocket.

Revision 1479 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 26 17:11:25 2001 UTC (14 years ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 13676 byte(s)
Diff to previous 1477
remove several compile warnings.

Revision 1477 - (view) (download) (as text) (annotate) - [select for diffs]
Added Fri Jan 26 16:55:08 2001 UTC (14 years ago) by rdm
Original Path: trunk/net/src/TPSocket.cxx
File length: 13624 byte(s)
two new classes supporting parallel socket operation. Using this technique
network transfers are striped over a set of parallel sockets thereby
dramatically increasing the network performance over fat pipes (grid like
infrastructure). Instead of waiting for an ACK before sending a next
fragment and thereby not filling up the pipe completely, the sockets
send fragments in parallel, keeping the pipe full. These two new classes
have the same interface as the standard TSocket and TServerSocket classes.

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9