| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. | 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. |
| 3 * Use of this source code is governed by a BSD-style license that can be | 3 * Use of this source code is governed by a BSD-style license that can be |
| 4 * found in the LICENSE file. | 4 * found in the LICENSE file. |
| 5 */ | 5 */ |
| 6 | 6 |
| 7 /* | 7 /* |
| 8 * NaCl Service Runtime. Directory descriptor abstraction. | 8 * NaCl Service Runtime. Directory descriptor abstraction. |
| 9 */ | 9 */ |
| 10 | 10 |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 135 memset(statbuf, 0, sizeof *statbuf); | 135 memset(statbuf, 0, sizeof *statbuf); |
| 136 /* | 136 /* |
| 137 * TODO(bsy): saying it's executable/searchable might be a lie. | 137 * TODO(bsy): saying it's executable/searchable might be a lie. |
| 138 */ | 138 */ |
| 139 statbuf->nacl_abi_st_mode = (NACL_ABI_S_IFDIR | | 139 statbuf->nacl_abi_st_mode = (NACL_ABI_S_IFDIR | |
| 140 NACL_ABI_S_IRUSR | | 140 NACL_ABI_S_IRUSR | |
| 141 NACL_ABI_S_IXUSR); | 141 NACL_ABI_S_IXUSR); |
| 142 return 0; | 142 return 0; |
| 143 } | 143 } |
| 144 | 144 |
| 145 static int NaClDescDirDescFchdir(struct NaClDesc *vself) { |
| 146 struct NaClDescDirDesc *self = (struct NaClDescDirDesc *) vself; |
| 147 |
| 148 return NaClHostDirFchdir(self->hd); |
| 149 } |
| 150 |
| 151 static int NaClDescDirDescFchmod(struct NaClDesc *vself, |
| 152 int mode) { |
| 153 struct NaClDescDirDesc *self = (struct NaClDescDirDesc *) vself; |
| 154 |
| 155 return NaClHostDirFchmod(self->hd, mode); |
| 156 } |
| 157 |
| 158 static int NaClDescDirDescFsync(struct NaClDesc *vself) { |
| 159 struct NaClDescDirDesc *self = (struct NaClDescDirDesc *) vself; |
| 160 |
| 161 return NaClHostDirFsync(self->hd); |
| 162 } |
| 163 |
| 164 static int NaClDescDirDescFdatasync(struct NaClDesc *vself) { |
| 165 struct NaClDescDirDesc *self = (struct NaClDescDirDesc *) vself; |
| 166 |
| 167 return NaClHostDirFdatasync(self->hd); |
| 168 } |
| 169 |
| 145 static struct NaClDescVtbl const kNaClDescDirDescVtbl = { | 170 static struct NaClDescVtbl const kNaClDescDirDescVtbl = { |
| 146 { | 171 { |
| 147 NaClDescDirDescDtor, | 172 NaClDescDirDescDtor, |
| 148 }, | 173 }, |
| 149 NaClDescMapNotImplemented, | 174 NaClDescMapNotImplemented, |
| 150 NACL_DESC_UNMAP_NOT_IMPLEMENTED | 175 NACL_DESC_UNMAP_NOT_IMPLEMENTED |
| 151 NaClDescDirDescRead, | 176 NaClDescDirDescRead, |
| 152 NaClDescWriteNotImplemented, | 177 NaClDescWriteNotImplemented, |
| 153 NaClDescDirDescSeek, | 178 NaClDescDirDescSeek, |
| 154 NaClDescPReadNotImplemented, | 179 NaClDescPReadNotImplemented, |
| 155 NaClDescPWriteNotImplemented, | 180 NaClDescPWriteNotImplemented, |
| 156 NaClDescDirDescFstat, | 181 NaClDescDirDescFstat, |
| 182 NaClDescDirDescFchdir, |
| 183 NaClDescDirDescFchmod, |
| 184 NaClDescDirDescFsync, |
| 185 NaClDescDirDescFdatasync, |
| 186 NaClDescFtruncateNotImplemented, |
| 157 NaClDescDirDescGetdents, | 187 NaClDescDirDescGetdents, |
| 158 NaClDescExternalizeSizeNotImplemented, | 188 NaClDescExternalizeSizeNotImplemented, |
| 159 NaClDescExternalizeNotImplemented, | 189 NaClDescExternalizeNotImplemented, |
| 160 NaClDescLockNotImplemented, | 190 NaClDescLockNotImplemented, |
| 161 NaClDescTryLockNotImplemented, | 191 NaClDescTryLockNotImplemented, |
| 162 NaClDescUnlockNotImplemented, | 192 NaClDescUnlockNotImplemented, |
| 163 NaClDescWaitNotImplemented, | 193 NaClDescWaitNotImplemented, |
| 164 NaClDescTimedWaitAbsNotImplemented, | 194 NaClDescTimedWaitAbsNotImplemented, |
| 165 NaClDescSignalNotImplemented, | 195 NaClDescSignalNotImplemented, |
| 166 NaClDescBroadcastNotImplemented, | 196 NaClDescBroadcastNotImplemented, |
| 167 NaClDescSendMsgNotImplemented, | 197 NaClDescSendMsgNotImplemented, |
| 168 NaClDescRecvMsgNotImplemented, | 198 NaClDescRecvMsgNotImplemented, |
| 169 NaClDescLowLevelSendMsgNotImplemented, | 199 NaClDescLowLevelSendMsgNotImplemented, |
| 170 NaClDescLowLevelRecvMsgNotImplemented, | 200 NaClDescLowLevelRecvMsgNotImplemented, |
| 171 NaClDescConnectAddrNotImplemented, | 201 NaClDescConnectAddrNotImplemented, |
| 172 NaClDescAcceptConnNotImplemented, | 202 NaClDescAcceptConnNotImplemented, |
| 173 NaClDescPostNotImplemented, | 203 NaClDescPostNotImplemented, |
| 174 NaClDescSemWaitNotImplemented, | 204 NaClDescSemWaitNotImplemented, |
| 175 NaClDescGetValueNotImplemented, | 205 NaClDescGetValueNotImplemented, |
| 176 NaClDescSetMetadata, | 206 NaClDescSetMetadata, |
| 177 NaClDescGetMetadata, | 207 NaClDescGetMetadata, |
| 178 NaClDescSetFlags, | 208 NaClDescSetFlags, |
| 179 NaClDescGetFlags, | 209 NaClDescGetFlags, |
| 180 NaClDescIsattyNotImplemented, | 210 NaClDescIsattyNotImplemented, |
| 181 NACL_DESC_DIR, | 211 NACL_DESC_DIR, |
| 182 }; | 212 }; |
| OLD | NEW |