Re: [PATCH v8 12/28] x86/insn-eval: Add utility functions to get segment selector

2017-10-04 Thread Ricardo Neri
On Fri, 2017-09-29 at 13:56 +0200, Borislav Petkov wrote: > On Thu, Sep 28, 2017 at 11:06:42PM -0700, Ricardo Neri wrote: > > > > I agree. In fact, insn_get_seg_base() does not need insn at all. All it > > needs is > > a INAT_SEG_REG_* index. This would make things clear. UMIP (and callers that >

Re: [PATCH v8 12/28] x86/insn-eval: Add utility functions to get segment selector

2017-09-29 Thread Borislav Petkov
On Thu, Sep 28, 2017 at 11:06:42PM -0700, Ricardo Neri wrote: > I agree. In fact, insn_get_seg_base() does not need insn at all. All it needs > is > a INAT_SEG_REG_* index. This would make things clear. UMIP (and callers that > need to copy_from_user code can do insn_get_seg_base(regs, INAT_SEG_RE

Re: [PATCH v8 12/28] x86/insn-eval: Add utility functions to get segment selector

2017-09-28 Thread Ricardo Neri
On Thu, 2017-09-28 at 11:36 +0200, Borislav Petkov wrote: > On Wed, Sep 27, 2017 at 03:32:26PM -0700, Ricardo Neri wrote: > > > > The idea is that get_overridden_seg_reg() would implement the logic you > > just described. It would return return INAT_SEG_REG_DEFAULT/IGNORE when > > segment override

Re: [PATCH v8 12/28] x86/insn-eval: Add utility functions to get segment selector

2017-09-28 Thread Borislav Petkov
On Wed, Sep 27, 2017 at 03:32:26PM -0700, Ricardo Neri wrote: > The idea is that get_overridden_seg_reg() would implement the logic you > just described. It would return return INAT_SEG_REG_DEFAULT/IGNORE when > segment override prefixes are not allowed (i.e., valid insn with > operand rDI and stri

Re: [PATCH v8 12/28] x86/insn-eval: Add utility functions to get segment selector

2017-09-27 Thread Ricardo Neri
On Wed, 2017-09-27 at 13:47 +0200, Borislav Petkov wrote: > On Tue, Sep 26, 2017 at 09:21:44PM -0700, Ricardo Neri wrote: > > > > This is true except when we don't have an insn at all (well, it may > > be > > non-NULL but it will only contain garbage). The case to which I am > > referring is when

Re: [PATCH v8 12/28] x86/insn-eval: Add utility functions to get segment selector

2017-09-27 Thread Borislav Petkov
On Tue, Sep 26, 2017 at 09:21:44PM -0700, Ricardo Neri wrote: > This is true except when we don't have an insn at all (well, it may be > non-NULL but it will only contain garbage). The case to which I am > referring is when we begin decoding our instruction. The first step is > to copy_from_user th

Re: [PATCH v8 12/28] x86/insn-eval: Add utility functions to get segment selector

2017-09-26 Thread Ricardo Neri
On Tue, 2017-09-26 at 12:43 +0200, Borislav Petkov wrote: > Hi, > > On Fri, Aug 18, 2017 at 05:27:53PM -0700, Ricardo Neri wrote: > > > > When computing a linear address and segmentation is used, we need > > to know > > the base address of the segment involved in the computation. In > > most of >

Re: [PATCH v8 12/28] x86/insn-eval: Add utility functions to get segment selector

2017-09-26 Thread Borislav Petkov
Hi, On Fri, Aug 18, 2017 at 05:27:53PM -0700, Ricardo Neri wrote: > When computing a linear address and segmentation is used, we need to know > the base address of the segment involved in the computation. In most of > the cases, the segment base address will be zero as in USER_DS/USER32_DS. ...