~ubuntu-branches/ubuntu/trusty/erlang/trusty

« back to all changes in this revision

Viewing changes to erts/emulator/drivers/common/erl_efile.h

  • Committer: Bazaar Package Importer
  • Author(s): Clint Byrum
  • Date: 2011-05-05 15:48:43 UTC
  • mfrom: (3.5.13 sid)
  • Revision ID: james.westby@ubuntu.com-20110505154843-0om6ekzg6m7ugj27
Tags: 1:14.b.2-dfsg-3ubuntu1
* Merge from debian unstable.  Remaining changes:
  - Drop libwxgtk2.8-dev build dependency. Wx isn't in main, and not
    supposed to.
  - Drop erlang-wx binary.
  - Drop erlang-wx dependency from -megaco, -common-test, and -reltool, they
    do not really need wx. Also drop it from -debugger; the GUI needs wx,
    but it apparently has CLI bits as well, and is also needed by -megaco,
    so let's keep the package for now.
  - debian/patches/series: Do what I meant, and enable build-options.patch
    instead.
* Additional changes:
  - Drop erlang-wx from -et
* Dropped Changes:
  - patches/pcre-crash.patch: CVE-2008-2371: outer level option with
    alternatives caused crash. (Applied Upstream)
  - fix for ssl certificate verification in newSSL: 
    ssl_cacertfile_fix.patch (Applied Upstream)
  - debian/patches/series: Enable native.patch again, to get stripped beam
    files and reduce the package size again. (build-options is what
    actually accomplished this)
  - Remove build-options.patch on advice from upstream and because it caused
    odd build failures.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*
2
2
 * %CopyrightBegin%
3
 
 * 
4
 
 * Copyright Ericsson AB 1997-2009. All Rights Reserved.
5
 
 * 
 
3
 *
 
4
 * Copyright Ericsson AB 1997-2010. All Rights Reserved.
 
5
 *
6
6
 * The contents of this file are subject to the Erlang Public License,
7
7
 * Version 1.1, (the "License"); you may not use this file except in
8
8
 * compliance with the License. You should have received a copy of the
9
9
 * Erlang Public License along with this software. If not, it can be
10
10
 * retrieved online at http://www.erlang.org/.
11
 
 * 
 
11
 *
12
12
 * Software distributed under the License is distributed on an "AS IS"
13
13
 * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
14
14
 * the License for the specific language governing rights and limitations
15
15
 * under the License.
16
 
 * 
 
16
 *
17
17
 * %CopyrightEnd%
18
18
 */
19
19
/*
32
32
#define EFILE_MODE_READ_WRITE   3
33
33
#define EFILE_MODE_APPEND       4
34
34
#define EFILE_COMPRESSED        8
35
 
#define EFILE_NO_TRUNCATE      16 /* Special for reopening on VxWorks */
 
35
#define EFILE_MODE_EXCL        16
 
36
#define EFILE_NO_TRUNCATE      32 /* Special for reopening on VxWorks */
36
37
 
37
38
/*
38
39
 * Seek modes for efile_seek().
58
59
#define FA_WRITE        1
59
60
#define FA_READ         2
60
61
 
 
62
/* Some OS'es (i.e. Windows) has filenames in wide charaqcters. That requires special handling */
 
63
/* Note that we do *not* honor alignment in the communication to the OS specific driver, */
 
64
/* which is not a problem on x86, but might be on other platforms. The OS specific efile */
 
65
/* implementation is expected to align if needed */
 
66
#ifdef __WIN32__
 
67
#define FILENAMES_16BIT 1
 
68
#endif
 
69
 
61
70
/*
62
71
 * An handle to an open directory.  To be cast to the correct type
63
72
 * in the system-dependent directory functions.
122
131
                  char* buffer, size_t size);
123
132
int efile_readdir(Efile_error* errInfo, char* name, 
124
133
                  EFILE_DIR_HANDLE* dir_handle,
125
 
                  char* buffer, size_t size);
 
134
                  char* buffer, size_t *size);
126
135
int efile_openfile(Efile_error* errInfo, char* name, int flags,
127
136
                   int* pfd, Sint64* pSize);
128
137
void efile_closefile(int fd);
 
138
int efile_fdatasync(Efile_error* errInfo, int fd);
129
139
int efile_fsync(Efile_error* errInfo, int fd);
130
140
int efile_fileinfo(Efile_error* errInfo, Efile_info* pInfo,
131
141
                   char *name, int info_for_link);
150
160
int efile_link(Efile_error* errInfo, char* old, char* new);
151
161
int efile_symlink(Efile_error* errInfo, char* old, char* new);
152
162
int efile_may_openfile(Efile_error* errInfo, char *name);
 
163
int efile_fadvise(Efile_error* errInfo, int fd, Sint64 offset, Sint64 length,
 
164
                  int advise);