;;; zeroconf.el --- Service browser using Avahi.
-;; Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+;; Copyright (C) 2008-2016 Free Software Foundation, Inc.
;; Author: Michael Albinus <michael.albinus@gmx.de>
;; Keywords: comm, hardware
;; The function `zeroconf-publish-service' publishes a new service to
;; the Avahi daemon. Although the domain, where to the service is
-;; published, can be specified by this function, it is usally the
+;; published, can be specified by this function, it is usually the
;; default domain "local" (also written as nil or "").
;; (zeroconf-publish-service
;; Pacify byte-compiler. D-Bus support in the Emacs core can be
;; disabled with configuration option "--without-dbus". Declare used
;; subroutines and variables of `dbus' therefore.
-(eval-when-compile
- (require 'cl))
-
-(declare-function dbus-call-method "dbusbind.c")
-(declare-function dbus-register-signal "dbusbind.c")
(defvar dbus-debug)
(require 'dbus)
service type of a discovered service. The value is the service
itself. The format of a service is
- \(INTERFACE PROTOCOL NAME TYPE DOMAIN FLAGS\)
+ \(INTERFACE PROTOCOL NAME TYPE DOMAIN FLAGS)
The INTERFACE is a number, which represents the network interface
the service is located at. The corresponding network interface
service type of a resolved service. The value is the service
itself. The format of a service is
- \(INTERFACE PROTOCOL NAME TYPE DOMAIN HOST APROTOCOL ADDRESS PORT TXT FLAGS\)
+ (INTERFACE PROTOCOL NAME TYPE DOMAIN HOST APROTOCOL ADDRESS PORT TXT FLAGS)
INTERFACE, PROTOCOL, NAME, TYPE, DOMAIN and FLAGS have the same
meaning as in `zeroconf-services-hash'.
APROTOCOL stands for the network protocol family ADDRESS is
encoded (`zeroconf-avahi-protocol-inet4' means INET4,
`zeroconf-avahi-protocol-inet6' means INET6). It can be
-different from PROTOCOL, when an adrress resolution has been
+different from PROTOCOL, when an address resolution has been
requested for another protocol family but the default one.
ADDRESS is the service address, encoded according to the
"Returns all discovered Avahi services for a given service type TYPE.
The service type is one of the returned values of
`zeroconf-list-service-types'. The return value is a list
-\(SERVICE1 SERVICE2 ...\). See `zeroconf-services-hash' for the
+\(SERVICE1 SERVICE2 ...). See `zeroconf-services-hash' for the
format of SERVICE."
(let (result)
(maphash
NAME must be a string. The service must be of service type
TYPE. The resulting list has the format
- \(INTERFACE PROTOCOL NAME TYPE DOMAIN FLAGS\)."
+ (INTERFACE PROTOCOL NAME TYPE DOMAIN FLAGS)."
;; Due to the service browser, all known services are kept in
;; `zeroconf-services-hash'.
(gethash (concat name "/" type) zeroconf-services-hash nil))
NAME must be a string. The service must be of service type
TYPE. The resulting list has the format
- \(INTERFACE PROTOCOL NAME TYPE DOMAIN HOST APROTOCOL ADDRESS PORT TXT FLAGS\)."
+ (INTERFACE PROTOCOL NAME TYPE DOMAIN HOST APROTOCOL ADDRESS PORT TXT FLAGS)."
(let* ((name (zeroconf-service-name service))
(type (zeroconf-service-type service))
(key (concat name "/" type)))
(nth 9 (zeroconf-resolve-service service)))
\f
-;;; Services signalling.
+;;; Services signaling.
;; Register for the service type browser. Service registrations will
;; happen in `zeroconf-service-type-browser-handler', when there is an
((string-equal (dbus-event-member-name last-input-event) "ItemNew")
;; Parameters: (interface protocol type domain flags)
;; Register a service browser.
- (let ((object-path (zeroconf-register-service-browser (nth-value 2 val))))
+ (let ((object-path (zeroconf-register-service-browser (nth 2 val))))
;; Register the signals.
(dolist (member '("ItemNew" "ItemRemove" "Failure"))
(dbus-register-signal
(provide 'zeroconf)
-;; arch-tag: ea578165-7fa8-44f4-90f0-de3940aec69f
;;; zeroconf.el ends here