chiark
/
gitweb
/
~ian
/
chiark-tcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
idtable better documented and sorted
[chiark-tcl.git]
/
base
/
hook.c
diff --git
a/base/hook.c
b/base/hook.c
index a9d0316f0c90089cce1f1383caa5030b30dfc8f0..2d59baa5fce7581083a346abaeaec1872e6cb949 100644
(file)
--- a/
base/hook.c
+++ b/
base/hook.c
@@
-22,6
+22,13
@@
int posixerr(Tcl_Interp *ip, int errnoval, const char *m) {
return TCL_ERROR;
}
return TCL_ERROR;
}
+int newfdposixerr(Tcl_Interp *ip, int fd, const char *m) {
+ int e;
+ e= errno;
+ close(fd);
+ return posixerr(ip,e,m);
+}
+
void objfreeir(Tcl_Obj *o) {
if (o->typePtr && o->typePtr->freeIntRepProc)
o->typePtr->freeIntRepProc(o);
void objfreeir(Tcl_Obj *o) {
if (o->typePtr && o->typePtr->freeIntRepProc)
o->typePtr->freeIntRepProc(o);
@@
-317,6
+324,12
@@
int do_hbytes_range(ClientData cd, Tcl_Interp *ip,
return TCL_OK;
}
return TCL_OK;
}
+int do_hbytes_mask_map(ClientData cd, Tcl_Interp *ip,
+ const MaskMap_SubCommand *subcmd,
+ int objc, Tcl_Obj *const *objv) {
+ return subcmd->func(0,ip,objc,objv);
+}
+
/* hbytes representing uint16_t's */
int do_hbytes_h2ushort(ClientData cd, Tcl_Interp *ip,
/* hbytes representing uint16_t's */
int do_hbytes_h2ushort(ClientData cd, Tcl_Interp *ip,
@@
-361,6
+374,12
@@
int do_toplevel_dgram_socket(ClientData cd, Tcl_Interp *ip,
return subcmd->func(0,ip,objc,objv);
}
return subcmd->func(0,ip,objc,objv);
}
+int do_toplevel_tuntap_socket_raw(ClientData cd, Tcl_Interp *ip,
+ const TunSocket_SubCommand *subcmd,
+ int objc, Tcl_Obj *const *objv) {
+ return subcmd->func(0,ip,objc,objv);
+}
+
int do_toplevel_ulong(ClientData cd, Tcl_Interp *ip,
const ULong_SubCommand *subcmd,
int objc, Tcl_Obj *const *objv) {
int do_toplevel_ulong(ClientData cd, Tcl_Interp *ip,
const ULong_SubCommand *subcmd,
int objc, Tcl_Obj *const *objv) {
@@
-400,13
+419,14
@@
int Hbytes_Init(Tcl_Interp *ip) {
Tcl_RegisterObjType(&enum_nearlytype);
Tcl_RegisterObjType(&enum1_nearlytype);
Tcl_RegisterObjType(&sockaddr_type);
Tcl_RegisterObjType(&enum_nearlytype);
Tcl_RegisterObjType(&enum1_nearlytype);
Tcl_RegisterObjType(&sockaddr_type);
- Tcl_RegisterObjType(&
dgramsockid_
type);
+ Tcl_RegisterObjType(&
tabledataid_nearly
type);
Tcl_RegisterObjType(&ulong_type);
Tcl_RegisterObjType(&ulong_type);
+ Tcl_RegisterObjType(&maskmap_type);
for (cmd=toplevel_commands;
cmd->name;
cmd++)
for (cmd=toplevel_commands;
cmd->name;
cmd++)
- Tcl_CreateObjCommand(ip, cmd->name, cmd->func, 0,0);
+ Tcl_CreateObjCommand(ip,
(char*)
cmd->name, cmd->func, 0,0);
return TCL_OK;
}
return TCL_OK;
}