search for: c_err

Displaying 5 results from an estimated 5 matches for "c_err".

Did you mean: _err
2020 Mar 17
5
[PATCH libnbd v2 0/3] Unfinished golang bindings.
These bindings get as far as running very simple connections. However there are many missing parts still: * No callbacks. * No functions which handle buffers (pread/pwrite!) This is posted just for general early interest, not even for review. Rich.
2020 Mar 17
0
[PATCH libnbd v2 2/3] Add outline framework for Go language bindings (golang).
...n fmt.Sprintf (\"%%s: %%s\", e.Op, e.Errmsg); + } else { + return fmt.Sprintf (\"%%s: %%s: %%s\", e.Op, e.Errmsg, e.Errno); + } +} + +/* Implement the error interface */ +func (e *LibnbdError) Error() string { + return e.String() +} + +func get_error (op string, c_err C.struct_error) *LibnbdError { + errmsg := C.GoString (c_err.error) + errno := syscall.Errno (c_err.errnum) + return &LibnbdError{ Op : op, Errmsg : errmsg, Errno : errno } +} + +func closed_handle_error (op string) *LibnbdError { + return &LibnbdError{ Op : op, Errmsg : \"...
2020 Mar 17
0
[PATCH libnbd v2 3/3] golang: Add straightforward bindings, without callbacks.
..."false" + | RStaticString -> "nil" + | RErr -> "0" + | RFd -> "0/*XXX*/" + | RInt -> "0" + | RInt64 -> "0" + | RCookie -> "0" + | RString -> "nil" + | RUInt -> "0" + +let go_ret_c_errcode = function + | RBool -> Some "-1" + | RStaticString -> Some "nil" + | RErr -> Some "-1" + | RFd -> Some "-1/*XXX*/" + | RInt -> Some "-1" + | RInt64 -> Some "-1" + | RCookie -> Some "-1" + | RStri...
2020 Mar 24
1
[PATCH libnbd v3] Add Go language bindings (golang) (RHBZ#1814538).
This feature is roughly finished now, although it needs a few more tests and some examples. It's pretty much up to par with all the other bindings, but it lacks a completely safe AIO buffer. It won't stop you from freeing the buffer too early) because golang's GC inexplicably lacks a way to declare a root from C. I can probably do it with a global variable and ref counting on the
2020 Mar 25
3
[PATCH libnbd v4] Add Go language bindings (golang) (RHBZ#1814538).
Now runs a complete set of tests, notably including the AIO test. File descriptors are passed in and out as plain ints (instead of *os.File) for a couple of reasons: (1) We have to pass the plain int to syscall.Select. (2) Turning an fd into an os.File causes golang to set the blocking flag which is deeply unhelpful. Rich.