12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- /*******************************************************************************
- * Copyright (c) 2018 IBM Corp.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v2.0
- * and Eclipse Distribution License v1.0 which accompany this distribution.
- *
- * The Eclipse Public License is available at
- * https://www.eclipse.org/legal/epl-2.0/
- * and the Eclipse Distribution License is available at
- * http://www.eclipse.org/org/documents/edl-v10.php.
- *
- * Contributors:
- * Ian Craggs - initial API and implementation and/or initial documentation
- *******************************************************************************/
- #if !defined(SUBOPTS_H)
- #define SUBOPTS_H
- /** The MQTT V5 subscribe options, apart from QoS which existed before V5. */
- typedef struct MQTTSubscribe_options
- {
- /** The eyecatcher for this structure. Must be MQSO. */
- char struct_id[4];
- /** The version number of this structure. Must be 0.
- */
- int struct_version;
- /** To not receive our own publications, set to 1.
- * 0 is the original MQTT behaviour - all messages matching the subscription are received.
- */
- unsigned char noLocal;
- /** To keep the retain flag as on the original publish message, set to 1.
- * If 0, defaults to the original MQTT behaviour where the retain flag is only set on
- * publications sent by a broker if in response to a subscribe request.
- */
- unsigned char retainAsPublished;
- /** 0 - send retained messages at the time of the subscribe (original MQTT behaviour)
- * 1 - send retained messages on subscribe only if the subscription is new
- * 2 - do not send retained messages at all
- */
- unsigned char retainHandling;
- } MQTTSubscribe_options;
- #define MQTTSubscribe_options_initializer { {'M', 'Q', 'S', 'O'}, 0, 0, 0, 0 }
- #endif
|