Next: GNU Free Documentation License, Previous: Help For Users, Up: Top [Contents][Index]

## 3 Help For Developers

The GnuTLS library is detected automatically at compile time. You should see that it’s enabled in the `configure` output. If not, follow the standard procedure for finding out why a system library is not picked up by the Emacs compilation. On the W32 (Windows) platform, installing the DLLs with a recent build should be enough.

Just use `open-protocol-stream` or `open-network-stream` (the two are equivalent, the first one being an alias to the second). You should not have to use the `gnutls.el` functions directly. But you can test them with `open-gnutls-stream`.

Function: open-gnutls-stream name buffer host service

  This function creates a buffer connected to a specific host and service (port number or service name). The parameters and their syntax are the same as those given to `open-network-stream` (see Network Connections in The Emacs Lisp Reference Manual). The connection process is called name (made unique if necessary). This function returns the connection process.

      ;; open a HTTPS connection
      (open-gnutls-stream "tls" "tls-buffer" "yourserver.com" "https")

      ;; open a IMAPS connection
      (open-gnutls-stream "tls" "tls-buffer" "imap.gmail.com" "imaps")

The function `gnutls-negotiate` is not generally useful and it may change as needed, so please see `gnutls.el` for the details.

Function: gnutls-negotiate spec

  Please see `gnutls.el` for the spec details and for usage, but do not rely on this function’s interface if possible.