Commit graph

498 commits

Author SHA1 Message Date
San Mehat
db01754579 libsysutils: const correctness fixes + remove some debugging
Signed-off-by: San Mehat <san@google.com>
2009-05-20 17:16:05 -07:00
Nick Pelly
92a7541bce Helper to perform abortable blocking operations on a socket:
asocket_connect()
   asocket_accept()
   asocket_read()
   asocket_write()
 These calls are similar to the regular syscalls, but can be aborted with:
   asocket_abort()

Calling close() on a regular POSIX socket does not abort blocked syscalls on
that socket in other threads.

After calling asocket_abort() the socket cannot be reused.

Call asocket_destory() *after* all threads have finished with the socket to
finish closing the socket and free the asocket structure.

The helper is implemented by setting the socket non-blocking to initiate
syscalls connect(), accept(), read(), write(), then using a blocking poll()
on both the primary socket and a local pipe. This makes the poll() abortable
by writing a byte to the local pipe in asocket_abort().

asocket_create() sets the fd to non-blocking mode. It must not be changed to
blocking mode.

Using asocket will triple the number of file descriptors required per
socket, due to the local pipe. It may be possible to use a global pipe per
process rather than per socket, but we have not been able to come up with a
race-free implementation yet.

All functions except asocket_init() and asocket_destroy() are thread safe.
2009-05-20 15:20:30 -07:00
Mathias Agopian
8f13782e7b move native_handle stuff from master_gl 2009-05-20 14:51:48 -07:00
Android (Google) Code Review
85246fee85 am b48acb0e: Merge change 1795 into donut
Merge commit 'b48acb0ebdc64d2f44cf869ac69aebbba2de192d'

* commit 'b48acb0ebdc64d2f44cf869ac69aebbba2de192d':
  Make /system/xbin/tcpdump setuid root.
2009-05-18 23:56:52 -07:00
Android (Google) Code Review
b48acb0ebd Merge change 1795 into donut
* changes:
  Make /system/xbin/tcpdump setuid root.
2009-05-18 16:35:27 -07:00
David 'Digit' Turner
34c22c5ba9 am 414ff7d9: Move fdevent from libcutils into adb directory. ADB is the only client of this API, and I intend to modify it extensively to clean its codebase soon.
Merge commit '414ff7d98ac8d7610a26206335954ad15f43f3ac'

* commit '414ff7d98ac8d7610a26206335954ad15f43f3ac':
  Move fdevent from libcutils into adb directory. ADB is the only client of this API, and I intend to modify it extensively to clean its codebase soon.
2009-05-18 08:37:02 -07:00
David 'Digit' Turner
414ff7d98a Move fdevent from libcutils into adb directory. ADB is the only client of this API, and I intend to modify it extensively to clean its codebase soon. 2009-05-18 17:07:46 +02:00
San Mehat
d99d1445fd resolved conflicts w/ b415390e74 merge 2009-05-15 13:02:13 -07:00
Dan Egnor
328a4fb535 Make /system/xbin/tcpdump setuid root. 2009-05-15 12:57:58 -07:00
Android (Google) Code Review
fc1ceb63d5 am dee68663: Merge change 1693 into donut
Merge commit 'dee68663724c7117a51eb3af3d9390e00af832f5'

* commit 'dee68663724c7117a51eb3af3d9390e00af832f5':
  libsysutils: Introduce 'ServiceManager', for starting/stopping init services
2009-05-15 11:51:34 -07:00
Android (Google) Code Review
b415390e74 Merge change 1778 into donut
* changes:
  init: Create new 'vpn' user/group and set owner of '/dev/tun' to it.
2009-05-15 10:47:22 -07:00
Android (Google) Code Review
dee6866372 Merge change 1693 into donut
* changes:
  libsysutils: Introduce 'ServiceManager', for starting/stopping init services
2009-05-15 10:44:06 -07:00
San Mehat
4a6f2321e7 init: Create new 'vpn' user/group and set owner of '/dev/tun' to it.
Signed-off-by: San Mehat <san@google.com>
2009-05-15 10:40:29 -07:00
San Mehat
c41d1c8074 libsysutils: Introduce 'ServiceManager', for starting/stopping init services
Signed-off-by: San Mehat <san@google.com>
2009-05-15 10:40:23 -07:00
Eric Fischer
035b427c70 am 722a5c04: Add support for "standalone months" to tztime\'s strftime().
Merge commit '722a5c0462f38827f4097065bfc3826b9e0e9fb4'

* commit '722a5c0462f38827f4097065bfc3826b9e0e9fb4':
  Add support for "standalone months" to tztime's strftime().
2009-05-15 10:15:18 -07:00
Mathias Agopian
b862ab74c9 Merge commit 'goog/master' into merge_master 2009-05-14 22:32:16 -07:00
Eric Fischer
722a5c0462 Add support for "standalone months" to tztime's strftime().
The idea here is that some languages need a different form of the month
name in constructions like "January 2" than in "January 2009", since the
one in the "January 2" case really means "of January."  So with this change,
a format string of "%-B" will use the standalone month, while "%B" will
continue to use the format month.
2009-05-14 17:22:20 -07:00
San Mehat
294449dd6e am d768066: libsysutils: Tweak SocketListener and friends
Merge commit 'd768066ef54270a0d3ccfccd50ae8238db5a2cdd'

* commit 'd768066ef54270a0d3ccfccd50ae8238db5a2cdd':
  libsysutils: Tweak SocketListener and friends
2009-05-12 14:15:22 -07:00
San Mehat
d768066ef5 libsysutils: Tweak SocketListener and friends
Signed-off-by: San Mehat <san@google.com>
2009-05-12 14:02:32 -07:00
Android (Google) Code Review
e1156972e1 am c73d9e4: Merge changes 1341,1342 into donut
Merge commit 'c73d9e43a0c98a87222ef0c8749d6abba06c7778'

* commit 'c73d9e43a0c98a87222ef0c8749d6abba06c7778':
  libsysutils: Add multiple client support and fix some bugs
  nexus: Implement wifi scanner and fix a lot of bugs
2009-05-11 09:03:29 -07:00
San Mehat
fa644ffe94 libsysutils: Add multiple client support and fix some bugs 2009-05-10 09:26:42 -07:00
Mathias Agopian
ab15ac0881 Merge commit 'goog/master' into merge_master 2009-05-07 17:46:47 -07:00
Android (Google) Code Review
9399844278 am 747baad: Merge change 1092 into donut
Merge commit '747baadddb37737b0ecf83f6147a5e3252a34b12'

* commit '747baadddb37737b0ecf83f6147a5e3252a34b12':
  libsysutils: New C++ system convenience library
2009-05-07 07:06:55 -07:00
San Mehat
168415b822 libsysutils: New C++ system convenience library
This library contains re-usable classes for common
    system level daemons. Initial consumers of this library
    are 'nexus' and 'vold2'

Signed-off-by: San Mehat <san@google.com>
2009-05-06 15:12:02 -07:00
Mathias Agopian
8cd81ab3f2 get rid of native_handle_{dup|copy} since they were not used any longer 2009-05-02 00:06:41 -07:00
Mathias Agopian
f313711450 Merge commit 'goog/master' into merge_master 2009-04-30 14:08:52 -07:00
Android (Google) Code Review
9fe0f0d14d am 6181f70: Merge change 484 into donut
Merge commit '6181f70bd40fd020661841923e725df75a3a2793'

* commit '6181f70bd40fd020661841923e725df75a3a2793':
  filesystem: Add new group 'sdcard_rw' for restricting sd card write access
2009-04-29 15:17:35 -07:00
San Mehat
6e1f21584f filesystem: Add new group 'sdcard_rw' for restricting sd card write access
Signed-off-by: San Mehat <san@google.com>
2009-04-23 09:15:08 -07:00
Mathias Agopian
cccf42773a fix copyright notice 2009-04-17 15:16:02 -07:00
Mathias Agopian
b5fbd75f6c add a compiler.h to libcutils. it's intended to define compiler-dependent macros.
currently, it defines CC_LIKELY and CC_UNLIKELY.
2009-04-17 14:43:36 -07:00
Mathias Agopian
61d8e487e6 Merge commit 'goog/master' into master_gl 2009-04-10 14:26:14 -07:00
Mathias Agopian
1d3faaf72f Integrate from //sandbox/mathias/donut/...@145728
SurfaceFlinger rework for new EGL driver model support.
2009-04-10 14:24:31 -07:00
The Android Open Source Project
455a6dffd4 Merge branch 'open_source' into google_internal 2009-03-29 08:55:26 -07:00
The Android Open Source Project
b1487e4c58 auto import //branches/master/...@140412 2009-03-18 22:20:28 -07:00
Jean-Baptiste Queru
83b65486be Merge commit 'remotes/korg/cupcake' into merge
Conflicts:
	init/devices.c
	libpixelflinger/Android.mk
2009-03-18 09:29:29 -07:00
The Android Open Source Project
dd7bc3319d auto import from //depot/cupcake/@135843 2009-03-03 19:32:55 -08:00
The Android Open Source Project
e54eebbf1a auto import from //depot/cupcake/@135843 2009-03-03 18:29:04 -08:00
The Android Open Source Project
1b8e5a6b14 auto import from //branches/cupcake/...@131421 2009-02-13 12:57:54 -08:00
The Android Open Source Project
13f797da7f auto import from //branches/cupcake/...@130745 2009-02-10 15:44:07 -08:00
The Android Open Source Project
1b6345894e Merge branch 'cupcake' 2009-01-20 14:05:44 -08:00
The Android Open Source Project
8ac3a13816 auto import from //branches/cupcake/...@127101 2009-01-20 14:04:01 -08:00
The Android Open Source Project
038862e152 Merge branch 'cupcake' 2009-01-09 18:04:23 -08:00
The Android Open Source Project
5ae090ed94 auto import from //branches/cupcake/...@125939 2009-01-09 17:51:25 -08:00
Jean-Baptiste Queru
77d0c65b95 Merge commit 'remotes/korg/cupcake'
Conflicts:
	init/devices.c
	logwrapper/logwrapper.c
	mountd/AutoMount.c
2008-12-19 08:15:15 -08:00
The Android Open Source Project
35237d1358 Code drop from //branches/cupcake/...@124589 2008-12-17 18:08:08 -08:00
Alexey Tarasov
abb9638e36 1. added macro definitions to AndroidConfig.h
2. removed unnecessary include of <alloca.h>
2008-11-07 11:44:22 +10:00
Alexey Tarasov
57401dc849 Added AndroidConfig.h for FreeBSD 2008-11-03 03:19:27 +10:00
The Android Open Source Project
4f6e8d7a00 Initial Contribution 2008-10-21 07:00:00 -07:00