~ubuntu-branches/ubuntu/karmic/erlang/karmic-security

« back to all changes in this revision

Viewing changes to erts/emulator/beam/global.h

  • Committer: Bazaar Package Importer
  • Author(s): Sergei Golovan
  • Date: 2009-06-11 12:18:07 UTC
  • mfrom: (1.2.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20090611121807-ks7eb4xrt7dsysgx
Tags: 1:13.b.1-dfsg-1
* New upstream release.
* Removed unnecessary dependency of erlang-os-mon on erlang-observer and
  erlang-tools and added missing dependency of erlang-nox on erlang-os-mon
  (closes: #529512).
* Removed a patch to eunit application because the bug was fixed upstream.

Show diffs side-by-side

added added

removed removed

Lines of Context:
48
48
 
49
49
typedef struct erts_driver_t_ erts_driver_t;
50
50
 
51
 
#define MAXINDX 255
52
 
 
53
 
typedef struct cache {
54
 
    Eterm in_arr[MAXINDX];
55
 
    Eterm out_arr[MAXINDX];
56
 
} ErlCache;
57
 
 
58
51
#define SMALL_IO_QUEUE 5   /* Number of fixed elements */
59
52
 
60
53
typedef struct {
166
159
    char *name;                  /* String used in the open */
167
160
    erts_driver_t* drv_ptr;
168
161
    long drv_data;
169
 
    ProcessList *suspended;      /* List of suspended processes. */
 
162
    ErtsProcList *suspended;     /* List of suspended processes. */
170
163
    LineBuf *linebuf;            /* Buffer to hold data not ready for
171
164
                                    process to get (line oriented I/O)*/
172
165
    Uint32 status;               /* Status and type flags */
880
873
 
881
874
#endif /* HYBRID */
882
875
 
883
 
/* dist.c */
884
 
/* More in dist.h */
885
 
/* Atom cache */
886
 
extern void clear_cache(DistEntry*);
887
 
extern void create_cache(DistEntry*);
888
 
extern void delete_cache(DistEntry*);
889
 
 
890
876
/* Utilities */
891
877
extern void erts_delete_nodes_monitors(Process *, ErtsProcLocks);
892
878
extern Eterm erts_monitor_nodes(Process *, Eterm, Eterm);
953
939
void MD5Update(MD5_CTX *, unsigned char *, unsigned int);
954
940
void MD5Final(unsigned char [16], MD5_CTX *);
955
941
 
956
 
/* external.c */
957
 
int erts_to_external_format(DistEntry*, Eterm, byte**, byte**, Uint *);
958
 
Eterm erts_from_external_format(DistEntry*, Eterm**, byte**, ErlOffHeap*);
959
 
Eterm encode_size_struct(Eterm, unsigned);
960
 
Sint erts_decoded_size(byte* t, Uint size, int no_refc_bins);
961
 
Eterm erts_term_to_binary(Process* p, Eterm Term, int level, Uint flags);
962
 
 
963
 
typedef struct {
964
 
    byte *extp;
965
 
    int exttmp;
966
 
} ErtsBinary2TermState;
967
 
 
968
 
Sint erts_binary2term_prepare(ErtsBinary2TermState *, byte *, Sint);
969
 
void erts_binary2term_abort(ErtsBinary2TermState *);
970
 
Eterm erts_binary2term_create(ErtsBinary2TermState *, Eterm **hpp, ErlOffHeap *);
971
 
 
972
942
/* ggc.c */
973
943
 
974
944
 
1006
976
    char *driver_name;
1007
977
} ErtsPortNames;
1008
978
 
 
979
#define ERTS_SPAWN_DRIVER 1
 
980
#define ERTS_SPAWN_EXECUTABLE 2
 
981
#define ERTS_SPAWN_ANY (ERTS_SPAWN_DRIVER | ERTS_SPAWN_EXECUTABLE)
1009
982
 
1010
983
int erts_add_driver_entry(ErlDrvEntry *drv, DE_Handle *handle, int driver_list_locked);
1011
984
void erts_destroy_driver(erts_driver_t *drv);
1021
994
Eterm erts_port_control(Process*, Port*, Uint, Eterm);
1022
995
int erts_write_to_port(Eterm caller_id, Port *p, Eterm list);
1023
996
void print_port_info(int, void *, int);
1024
 
void dist_port_command(Port*, byte*, int);
 
997
void erts_raw_port_command(Port*, byte*, Uint);
1025
998
void driver_report_exit(int, int);
1026
999
LineBuf* allocate_linebuf(int);
1027
1000
int async_ready(Port *, void*);