You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.5 KiB
51 lines
1.5 KiB
/* //device/system/reference-ril/misc.c
|
|
**
|
|
** Copyright 2006, The Android Open Source Project
|
|
**
|
|
** Licensed under the Apache License, Version 2.0 (the "License");
|
|
** you may not use this file except in compliance with the License.
|
|
** You may obtain a copy of the License at
|
|
**
|
|
** http://www.apache.org/licenses/LICENSE-2.0
|
|
**
|
|
** Unless required by applicable law or agreed to in writing, software
|
|
** distributed under the License is distributed on an "AS IS" BASIS,
|
|
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
** See the License for the specific language governing permissions and
|
|
** limitations under the License.
|
|
*/
|
|
#include <sys/system_properties.h>
|
|
|
|
#include <fcntl.h>
|
|
#include "misc.h"
|
|
/** returns 1 if line starts with prefix, 0 if it does not */
|
|
int strStartsWith(const char *line, const char *prefix)
|
|
{
|
|
for ( ; *line != '\0' && *prefix != '\0' ; line++, prefix++) {
|
|
if (*line != *prefix) {
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
return *prefix == '\0';
|
|
}
|
|
|
|
// Returns true iff running this process in an emulator VM
|
|
bool isInEmulator(void) {
|
|
static int inQemu = -1;
|
|
if (inQemu < 0) {
|
|
char propValue[PROP_VALUE_MAX];
|
|
inQemu = (__system_property_get("ro.boot.qemu", propValue) != 0);
|
|
}
|
|
return inQemu == 1;
|
|
}
|
|
|
|
int qemu_open_modem_port() {
|
|
char propValue[PROP_VALUE_MAX];
|
|
if (__system_property_get("vendor.qemu.vport.modem", propValue) <= 0) {
|
|
return -1;
|
|
}
|
|
int fd = open(propValue, O_RDWR);
|
|
return fd;
|
|
}
|