206. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 9/25/2018 2:13:12 PM Central Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

206.1 Files compared

# Location File Last Modified
1 build 3.zip\build 3\MHLTH_YS_137_Source\JavaScript\resources\javaJDF-1.8.0\src\sun\misc SharedSecrets.java Mon Jan 22 14:46:54 2018 UTC
2 build 3.zip\build 3\MHLTH_YS_137_Source\JavaScript\resources\javaJDF-1.8.0\src\sun\misc SharedSecrets.java Wed Sep 12 17:44:23 2018 UTC

206.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 4 398
Changed 3 6
Inserted 0 0
Removed 0 0

206.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

206.4 Active regular expressions

No regular expressions were active.

206.5 Comparison detail

  1   /*
  2    * Copyrig ht (c) 200 2, 2017, O racle and/ or its aff iliates. A ll rights  reserved.
  3    * DO NOT  ALTER OR R EMOVE COPY RIGHT NOTI CES OR THI S FILE HEA DER.
  4    *
  5    * This co de is free  software;  you can r edistribut e it and/o r modify i t
  6    * under t he terms o f the GNU  General Pu blic Licen se version  2 only, a s
  7    * publish ed by the  Free Softw are Founda tion.  Ora cle design ates this
  8    * particu lar file a s subject  to the "Cl asspath" e xception a s provided
  9    * by Orac le in the  LICENSE fi le that ac companied  this code.
  10    *
  11    * This co de is dist ributed in  the hope  that it wi ll be usef ul, but WI THOUT
  12    * ANY WAR RANTY; wit hout even  the implie d warranty  of MERCHA NTABILITY  or
  13    * FITNESS  FOR A PAR TICULAR PU RPOSE.  Se e the GNU  General Pu blic Licen se
  14    * version  2 for mor e details  (a copy is  included  in the LIC ENSE file  that
  15    * accompa nied this  code).
  16    *
  17    * You sho uld have r eceived a  copy of th e GNU Gene ral Public  License v ersion
  18    * 2 along  with this  work; if  not, write  to the Fr ee Softwar e Foundati on,
  19    * Inc., 5 1 Franklin  St, Fifth  Floor, Bo ston, MA 0 2110-1301  USA.
  20    *
  21    * Please  contact Or acle, 500  Oracle Par kway, Redw ood Shores , CA 94065  USA
  22    * or visi t www.orac le.com if  you need a dditional  informatio n or have  any
  23    * questio ns.
  24    */
  25  
  26   package su n.misc;
  27  
  28   import jav a.io.Objec tInputStre am;
  29   import jav a.util.jar .JarFile;
  30   import jav a.io.Conso le;
  31   import jav a.io.FileD escriptor;
  32   import jav a.io.Objec tInputStre am;
  33   import jav a.security .Protectio nDomain;
  34  
  35   import jav a.security .AccessCon troller;
  36  
  37   /** A repo sitory of  "shared  PW      s", which  are a mech anism for
  38       callin g implemen tation-pri vate metho ds in anot her packag e without
  39       using  reflection . A packag e-private  class impl ements a p ublic
  40       interf ace and pr ovides the  ability t o call pac kage-priva te methods
  41       within  that pack age; the o bject impl ementing t hat interf ace is
  42       provid ed through  a third p ackage to  which acce ss is rest ricted.
  43       This f ramework a voids the  primary di sadvantage  of using  reflection
  44       for th is purpose , namely t he loss of  compile-t ime checki ng. */
  45  
  46   public cla ss SharedS ecrets {
  47       privat e static f inal Unsaf e unsafe =  Unsafe.ge tUnsafe();
  48       privat e static J avaUtilJar Access jav aUtilJarAc cess;
  49       privat e static J avaLangAcc ess javaLa ngAccess;
  50       privat e static J avaLangRef Access jav aLangRefAc cess;
  51       privat e static J avaIOAcces s javaIOAc cess;
  52       privat e static J avaNetAcce ss javaNet Access;
  53       privat e static J avaNetHttp CookieAcce ss javaNet HttpCookie Access;
  54       privat e static J avaNioAcce ss javaNio Access;
  55       privat e static J avaIOFileD escriptorA ccess java IOFileDesc riptorAcce ss;
  56       privat e static J avaSecurit yProtectio nDomainAcc ess javaSe curityProt ectionDoma inAccess;
  57       privat e static J avaSecurit yAccess ja vaSecurity Access;
  58       privat e static J avaUtilZip FileAccess  javaUtilZ ipFileAcce ss;
  59       privat e static J avaAWTAcce ss javaAWT Access;
  60       privat e static J avaOISAcce ss javaOIS Access;
  61  
  62       public  static Ja vaUtilJarA ccess java UtilJarAcc ess() {
  63           if  (javaUtil JarAccess  == null) {
  64                // Ensur e JarFile  is initial ized; we k now that t hat class
  65                  // provide s the shar ed  PW     
  66                unsafe.e nsureClass Initialize d(JarFile. class);
  67           }
  68           re turn javaU tilJarAcce ss;
  69       }
  70  
  71       public  static vo id setJava UtilJarAcc ess(JavaUt ilJarAcces s access)  {
  72           ja vaUtilJarA ccess = ac cess;
  73       }
  74  
  75       public  static vo id setJava LangAccess (JavaLangA ccess jla)  {
  76           ja vaLangAcce ss = jla;
  77       }
  78  
  79       public  static Ja vaLangAcce ss getJava LangAccess () {
  80           re turn javaL angAccess;
  81       }
  82  
  83       public  static vo id setJava LangRefAcc ess(JavaLa ngRefAcces s jlra) {
  84           ja vaLangRefA ccess = jl ra;
  85       }
  86  
  87       public  static Ja vaLangRefA ccess getJ avaLangRef Access() {
  88           re turn javaL angRefAcce ss;
  89       }
  90  
  91       public  static vo id setJava NetAccess( JavaNetAcc ess jna) {
  92           ja vaNetAcces s = jna;
  93       }
  94  
  95       public  static Ja vaNetAcces s getJavaN etAccess()  {
  96           re turn javaN etAccess;
  97       }
  98  
  99       public  static vo id setJava NetHttpCoo kieAccess( JavaNetHtt pCookieAcc ess a) {
  100           ja vaNetHttpC ookieAcces s = a;
  101       }
  102  
  103       public  static Ja vaNetHttpC ookieAcces s getJavaN etHttpCook ieAccess()  {
  104           if  (javaNetH ttpCookieA ccess == n ull)
  105                unsafe.e nsureClass Initialize d(java.net .HttpCooki e.class);
  106           re turn javaN etHttpCook ieAccess;
  107       }
  108  
  109       public  static vo id setJava NioAccess( JavaNioAcc ess jna) {
  110           ja vaNioAcces s = jna;
  111       }
  112  
  113       public  static Ja vaNioAcces s getJavaN ioAccess()  {
  114           if  (javaNioA ccess == n ull) {
  115                // Ensur e java.nio .ByteOrder  is initia lized; we  know that
  116                // this  class init ializes ja va.nio.Bit s that pro vides the
  117                  // shared  PW      .
  118                unsafe.e nsureClass Initialize d(java.nio .ByteOrder .class);
  119           }
  120           re turn javaN ioAccess;
  121       }
  122  
  123       public  static vo id setJava IOAccess(J avaIOAcces s jia) {
  124           ja vaIOAccess  = jia;
  125       }
  126  
  127       public  static Ja vaIOAccess  getJavaIO Access() {
  128           if  (javaIOAc cess == nu ll) {
  129                unsafe.e nsureClass Initialize d(Console. class);
  130           }
  131           re turn javaI OAccess;
  132       }
  133  
  134       public  static vo id setJava IOFileDesc riptorAcce ss(JavaIOF ileDescrip torAccess  jiofda) {
  135           ja vaIOFileDe scriptorAc cess = jio fda;
  136       }
  137  
  138       public  static Ja vaIOFileDe scriptorAc cess getJa vaIOFileDe scriptorAc cess() {
  139           if  (javaIOFi leDescript orAccess = = null)
  140                unsafe.e nsureClass Initialize d(FileDesc riptor.cla ss);
  141  
  142           re turn javaI OFileDescr iptorAcces s;
  143       }
  144  
  145       public  static vo id setJava OISAccess( JavaOISAcc ess access ) {
  146           ja vaOISAcces s = access ;
  147       }
  148  
  149       public  static Ja vaOISAcces s getJavaO ISAccess()  {
  150           if  (javaOISA ccess == n ull)
  151                unsafe.e nsureClass Initialize d(ObjectIn putStream. class);
  152  
  153           re turn javaO ISAccess;
  154       }
  155  
  156  
  157       public  static vo id setJava SecurityPr otectionDo mainAccess
  158           (J avaSecurit yProtectio nDomainAcc ess jspda)  {
  159                javaSecu rityProtec tionDomain Access = j spda;
  160       }
  161  
  162       public  static Ja vaSecurity Protection DomainAcce ss
  163           ge tJavaSecur ityProtect ionDomainA ccess() {
  164                if (java SecurityPr otectionDo mainAccess  == null)
  165                    unsa fe.ensureC lassInitia lized(Prot ectionDoma in.class);
  166                return j avaSecurit yProtectio nDomainAcc ess;
  167       }
  168  
  169       public  static vo id setJava SecurityAc cess(JavaS ecurityAcc ess jsa) {
  170           ja vaSecurity Access = j sa;
  171       }
  172  
  173       public  static Ja vaSecurity Access get JavaSecuri tyAccess()  {
  174           if  (javaSecu rityAccess  == null)  {
  175                unsafe.e nsureClass Initialize d(AccessCo ntroller.c lass);
  176           }
  177           re turn javaS ecurityAcc ess;
  178       }
  179  
  180       public  static Ja vaUtilZipF ileAccess  getJavaUti lZipFileAc cess() {
  181           if  (javaUtil ZipFileAcc ess == nul l)
  182                unsafe.e nsureClass Initialize d(java.uti l.zip.ZipF ile.class) ;
  183           re turn javaU tilZipFile Access;
  184       }
  185  
  186       public  static vo id setJava UtilZipFil eAccess(Ja vaUtilZipF ileAccess  access) {
  187           ja vaUtilZipF ileAccess  = access;
  188       }
  189  
  190       public  static vo id setJava AWTAccess( JavaAWTAcc ess jaa) {
  191           ja vaAWTAcces s = jaa;
  192       }
  193  
  194       public  static Ja vaAWTAcces s getJavaA WTAccess()  {
  195           //  this may  return nul l in which  case call ing code n eeds to
  196           //  provision  for.
  197           if  (javaAWTA ccess == n ull) {
  198                return n ull;
  199           }
  200           re turn javaA WTAccess;
  201       }
  202   }