> On Feb. 14, 2017, 4:12 p.m., Jan Schlicht wrote:
> > src/common/http.hpp, line 133
> > <https://reviews.apache.org/r/56618/diff/1/?file=1632574#file1632574line133>
> >
> >     How about using an `Option<AuthenticationContext>` here and returning 
> > `Subject()` in the case of `context.isNone()`?
> >     All calls to this functions in the following patch are either
> >     ```
> >     authorization::Subject subject = context.isSome()
> >       ? createAuthorizationSubject(context.get())
> >       : authorization::Subject();
> >     ```
> >     or
> >     ```
> >     if (context.isSome()) {
> >       
> > request.mutable_subject()->CopyFrom(createAuthorizationSubject(context.get()));
> >     }
> >     ```
> >     At least the first form would look much simpler and concise when 
> > changing the function signature this way:
> >     ```
> >     authorization::Subject subject = createAuthorizationSubject(context)
> >     ```
> >     What do you think?
> 
> Alexander Rojas wrote:
>     We discussed this, and the semantics of a default created 
> `authorization::Subject` are different from that of a non setted subject, 
> therefore this is a bad idea. However, there may be a related bug already 
> inside Mesos authorizer for not paying attention to the different semantics. 
> We still need to build a test for it.

Okay, so the first example wouldn't be concerned by this, because it is always 
creating an `authorization::Subject`. Of course, this is true for the second 
example, we want to differ between `Request::subject` being set or not. Still, 
changing the signature and doing
```
if (context.isSome()) {
  request.mutable_subject()->CopyFrom(createAuthorizationSubject(context));
}
```
would make sure of that.


- Jan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/56618/#review165511
-----------------------------------------------------------


On Feb. 14, 2017, 12:46 a.m., Greg Mann wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/56618/
> -----------------------------------------------------------
> 
> (Updated Feb. 14, 2017, 12:46 a.m.)
> 
> 
> Review request for mesos, Adam B, Alexander Rojas, Jan Schlicht, Till 
> Toenshoff, and Vinod Kone.
> 
> 
> Bugs: MESOS-7003
>     https://issues.apache.org/jira/browse/MESOS-7003
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> This patch updates common Mesos HTTP-related helpers,
> as well as the `authorization::Subject` protobuf
> message, to make use of the `AuthenticationContext`
> type instead of an `Option<string> principal`.
> 
> 
> Diffs
> -----
> 
>   include/mesos/authorizer/authorizer.proto 
> 8b860a3e8e0b1c660a8fefc97f10f5acc0501920 
>   src/common/http.hpp 3d5ab59ddc4dce4d791c1b439f5e1459d1a724a4 
>   src/common/http.cpp abfbf7248beb2d4068be06b7f5f829d7617f943e 
> 
> Diff: https://reviews.apache.org/r/56618/diff/
> 
> 
> Testing
> -------
> 
> Testing information can be found at the end of this review chain.
> 
> 
> Thanks,
> 
> Greg Mann
> 
>

Reply via email to