blob: e1aff4f9e43e62284849d66a78e1c07a204e6a4e [file] [log] [blame]
Josh Gao5e2285d2017-02-22 12:19:05 -08001#pragma once
2
Irina Tirdeab5f053b2012-09-08 09:17:54 +03003/*
Josh Gao5e2285d2017-02-22 12:19:05 -08004 * Copyright (C) 2017 The Android Open Source Project
Irina Tirdeab5f053b2012-09-08 09:17:54 +03005 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 * * Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in
14 * the documentation and/or other materials provided with the
15 * distribution.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
20 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
21 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
22 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
23 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
24 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
25 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
26 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
27 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28 * SUCH DAMAGE.
29 */
30
Josh Gao5e2285d2017-02-22 12:19:05 -080031#include <grp.h>
32#include <pwd.h>
Irina Tirdeab5f053b2012-09-08 09:17:54 +030033
Josh Gao5e2285d2017-02-22 12:19:05 -080034struct group_state_t {
35 group group_;
36 char* group_members_[2];
37 char group_name_buffer_[32];
38 // Must be last so init_group_state can run a simple memset for the above
39 ssize_t getgrent_idx;
Elliott Hughes61706932015-03-31 10:56:58 -070040};
Irina Tirdeab5f053b2012-09-08 09:17:54 +030041
Josh Gao5e2285d2017-02-22 12:19:05 -080042struct passwd_state_t {
43 passwd passwd_;
44 char name_buffer_[32];
45 char dir_buffer_[32];
46 char sh_buffer_[32];
47 ssize_t getpwent_idx;
48};