XRootD
Loading...
Searching...
No Matches
XrdXrootdAdmin.hh
Go to the documentation of this file.
1
#ifndef __XROOTDADMIN__
2
#define __XROOTDADMIN__
3
/******************************************************************************/
4
/* */
5
/* X r d X r o o t d A d m i n . h h */
6
/* */
7
/* (c) 2005 by the Board of Trustees of the Leland Stanford, Jr., University */
8
/* All Rights Reserved */
9
/* Produced by Andrew Hanushevsky for Stanford University under contract */
10
/* DE-AC02-76-SFO0515 with the Department of Energy */
11
/* */
12
/* This file is part of the XRootD software suite. */
13
/* */
14
/* XRootD is free software: you can redistribute it and/or modify it under */
15
/* the terms of the GNU Lesser General Public License as published by the */
16
/* Free Software Foundation, either version 3 of the License, or (at your */
17
/* option) any later version. */
18
/* */
19
/* XRootD is distributed in the hope that it will be useful, but WITHOUT */
20
/* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or */
21
/* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public */
22
/* License for more details. */
23
/* */
24
/* You should have received a copy of the GNU Lesser General Public License */
25
/* along with XRootD in a file called COPYING.LESSER (LGPL license) and file */
26
/* COPYING (GPL license). If not, see <http://www.gnu.org/licenses/>. */
27
/* */
28
/* The copyright holder's institutional names and contributor's names may not */
29
/* be used to endorse or promote products derived from this software without */
30
/* specific prior written permission of the institution or contributor. */
31
/******************************************************************************/
32
33
#include <cstdlib>
34
#include <netinet/in.h>
35
36
#include "
Xrd/XrdLinkMatch.hh
"
37
#include "
XrdOuc/XrdOucStream.hh
"
38
#include "
XProtocol/XProtocol.hh
"
39
40
class
XrdNetSocket
;
41
class
XrdXrootdJob
;
42
43
class
XrdXrootdAdmin
44
{
45
public
:
46
47
static
void
addJob
(
const
char
*jname,
XrdXrootdJob
*jp);
48
49
static
int
Init
(
XrdSysError
*erp,
XrdNetSocket
*asock);
50
51
void
Login
(
int
socknum);
52
53
void
*
Start
(
XrdNetSocket
*AdminSock);
54
55
XrdXrootdAdmin
() {}
56
~XrdXrootdAdmin
() {}
57
58
private
:
59
int
do_Cj();
60
int
do_Login();
61
int
do_Lsc();
62
int
do_Lsj();
63
int
do_Lsj_Xeq(
XrdXrootdJob
*jp);
64
int
do_Lsd();
65
int
do_Msg();
66
char
*getMsg(
char
*msg,
int
&mlen);
67
int
getreqID();
68
int
getTarget(
const
char
*act,
char
**rest=0);
69
int
sendErr(
int
rc,
const
char
*act,
const
char
*msg);
70
int
sendOK(
int
sent);
71
int
sendResp(
const
char
*act,
XActionCode
anum);
72
int
sendResp(
const
char
*act,
XActionCode
anum,
73
const
char
*msg,
int
mlen);
74
void
Xeq();
75
76
struct
JobTable {
struct
JobTable *Next;
77
char
*Jname;
78
XrdXrootdJob
*Job;
79
};
80
81
static
JobTable *JobList;
82
83
static
XrdSysError
*
eDest
;
84
XrdOucStream
Stream;
85
XrdLinkMatch
Target;
86
87
struct
usr {
kXR_unt16
pad;
88
kXR_unt16
atn;
89
kXR_int32
len;
90
kXR_int32
act;
91
usr() {pad = 0; atn = htons(
kXR_attn
);}
92
~usr() {}
93
} usResp;
94
char
TraceID[24];
95
char
reqID[16];
96
};
97
#endif
XProtocol.hh
XActionCode
XActionCode
Definition
XProtocol.hh:927
kXR_attn
@ kXR_attn
Definition
XProtocol.hh:899
kXR_int32
int kXR_int32
Definition
XPtypes.hh:89
kXR_unt16
unsigned short kXR_unt16
Definition
XPtypes.hh:67
eDest
static XrdSysError eDest(0,"crypto_")
XrdLinkMatch.hh
XrdOucStream.hh
XrdLinkMatch
Definition
XrdLinkMatch.hh:35
XrdNetSocket
Definition
XrdNetSocket.hh:48
XrdOucStream
Definition
XrdOucStream.hh:47
XrdSysError
Definition
XrdSysError.hh:90
XrdXrootdAdmin
Definition
XrdXrootdAdmin.hh:44
XrdXrootdAdmin::Init
static int Init(XrdSysError *erp, XrdNetSocket *asock)
Definition
XrdXrootdAdmin.cc:93
XrdXrootdAdmin::XrdXrootdAdmin
XrdXrootdAdmin()
Definition
XrdXrootdAdmin.hh:55
XrdXrootdAdmin::~XrdXrootdAdmin
~XrdXrootdAdmin()
Definition
XrdXrootdAdmin.hh:56
XrdXrootdAdmin::Login
void Login(int socknum)
Definition
XrdXrootdAdmin.cc:111
XrdXrootdAdmin::Start
void * Start(XrdNetSocket *AdminSock)
Definition
XrdXrootdAdmin.cc:148
XrdXrootdAdmin::addJob
static void addJob(const char *jname, XrdXrootdJob *jp)
Definition
XrdXrootdAdmin.cc:79
XrdXrootdJob
Definition
XrdXrootdJob.hh:52
XrdXrootd
XrdXrootdAdmin.hh
Generated by
1.10.0