1963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales/* 2963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * Copyright (C) 2014 The Android Open Source Project 3963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * 4963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * Licensed under the Apache License, Version 2.0 (the "License"); 5963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * you may not use this file except in compliance with the License. 6963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * You may obtain a copy of the License at 7963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * 8963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * http://www.apache.org/licenses/LICENSE-2.0 9963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * 10963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * Unless required by applicable law or agreed to in writing, software 11963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * distributed under the License is distributed on an "AS IS" BASIS, 12963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * See the License for the specific language governing permissions and 14963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales * limitations under the License. 15963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales */ 16963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales 1768d4acd205e8c2da524e62734ca42847306cc029Andres Moralespackage android.service.persistentdata; 1868d4acd205e8c2da524e62734ca42847306cc029Andres Morales 1968d4acd205e8c2da524e62734ca42847306cc029Andres Moralesimport android.os.ParcelFileDescriptor; 2068d4acd205e8c2da524e62734ca42847306cc029Andres Morales 2168d4acd205e8c2da524e62734ca42847306cc029Andres Morales/** 2268d4acd205e8c2da524e62734ca42847306cc029Andres Morales * Internal interface through which to communicate to the 2368d4acd205e8c2da524e62734ca42847306cc029Andres Morales * PersistentDataBlockService. The persistent data block allows writing 2468d4acd205e8c2da524e62734ca42847306cc029Andres Morales * raw data and setting the OEM unlock enabled/disabled bit contained 2568d4acd205e8c2da524e62734ca42847306cc029Andres Morales * in the partition. 2668d4acd205e8c2da524e62734ca42847306cc029Andres Morales * 2768d4acd205e8c2da524e62734ca42847306cc029Andres Morales * @hide 2868d4acd205e8c2da524e62734ca42847306cc029Andres Morales */ 2968d4acd205e8c2da524e62734ca42847306cc029Andres Moralesinterface IPersistentDataBlockService { 3068d4acd205e8c2da524e62734ca42847306cc029Andres Morales int write(in byte[] data); 31963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales byte[] read(); 32963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales void wipe(); 3368d4acd205e8c2da524e62734ca42847306cc029Andres Morales int getDataBlockSize(); 34963295ea105314e28e4ca9563aa09cb7440de4c3Andres Morales long getMaximumDataBlockSize(); 3568d4acd205e8c2da524e62734ca42847306cc029Andres Morales 3668d4acd205e8c2da524e62734ca42847306cc029Andres Morales void setOemUnlockEnabled(boolean enabled); 3768d4acd205e8c2da524e62734ca42847306cc029Andres Morales boolean getOemUnlockEnabled(); 3874e9b18b2de2127e081b170cdd4622193cfb7543Andres Morales int getFlashLockState(); 397374d3a4bca6bfbf7da1ef5dbf0db9f35f0c8315Adrian Roos boolean hasFrpCredentialHandle(); 4068d4acd205e8c2da524e62734ca42847306cc029Andres Morales} 4174e9b18b2de2127e081b170cdd4622193cfb7543Andres Morales 42