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.