Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
emulab
emulab-devel
Commits
4bbf1a4f
Commit
4bbf1a4f
authored
Dec 08, 2015
by
Leigh B Stoller
Browse files
Refuse to extend slices that include nodes that are sched_reserved or
pre-reserved to another project.
parent
3c8a4912
Changes
1
Hide whitespace changes
Inline
Side-by-side
protogeni/lib/GeniCM.pm.in
View file @
4bbf1a4f
...
...
@@ -4618,7 +4618,31 @@ sub RenewSliverAux($$$)
#
expiration
so
we
can
see
what
the
user
actually
tried
to
do
.
#
main
::
AddLogfileMetaData
(
"renew_request"
,
$
expires
);
#
#
Check
all
of
the
nodes
in
the
underlying
experiment
to
see
if
#
any
are
sched
-
reserved
or
pre
-
reserved
.
If
so
we
decline
the
#
extension
.
#
my
$
slice_experiment
=
$
slice
->
GetExperiment
();
my
@
pnodes
=
$
slice_experiment
->
NodeList
();
foreach
my
$
pnode
(@
pnodes
)
{
my
$
pnodeid
=
$
pnode
->
node_id
();
if
(
defined
($
pnode
->
reserved_pid
())
&&
$
pnode
->
reserved_pid
()
ne
$
slice_experiment
->
pid
())
{
$
slice
->
UnLock
();
return
GeniResponse
->
Create
(
GENIRESPONSE_REFUSED
,
undef
,
"Refused cause $pnodeid is pre-reserved"
);
}
if
(
defined
($
pnode
->
NextReservation
()))
{
$
slice
->
UnLock
();
return
GeniResponse
->
Create
(
GENIRESPONSE_REFUSED
,
undef
,
"Refused cause $pnodeid is sched-reserved"
);
}
}
my
$
response
=
SetSliceExpiration
($
slice
,
$
expires
,
0
,
$
alap
,
@{
$
credentials
});
if
(
GeniResponse
::
IsError
($
response
))
{
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment