2 This file is part of PulseAudio.
4 Copyright 2004-2006 Lennart Poettering
6 PulseAudio is free software; you can redistribute it and/or modify
7 it under the terms of the GNU Lesser General Public License as
8 published by the Free Software Foundation; either version 2.1 of the
9 License, or (at your option) any later version.
11 PulseAudio is distributed in the hope that it will be useful, but
12 WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Lesser General Public License for more details.
16 You should have received a copy of the GNU Lesser General Public
17 License along with PulseAudio; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
26 #include <pulsecore/native-common.h>
27 #include <pulsecore/macro.h>
29 #include "pstream-util.h"
31 void pa_pstream_send_tagstruct_with_creds(pa_pstream
*p
, pa_tagstruct
*t
, const pa_creds
*creds
) {
39 pa_assert_se(data
= pa_tagstruct_free_data(t
, &length
));
40 pa_assert_se(packet
= pa_packet_new_dynamic(data
, length
));
41 pa_pstream_send_packet(p
, packet
, creds
);
42 pa_packet_unref(packet
);
45 void pa_pstream_send_error(pa_pstream
*p
, uint32_t tag
, uint32_t error
) {
48 pa_assert_se(t
= pa_tagstruct_new(NULL
, 0));
49 pa_tagstruct_putu32(t
, PA_COMMAND_ERROR
);
50 pa_tagstruct_putu32(t
, tag
);
51 pa_tagstruct_putu32(t
, error
);
52 pa_pstream_send_tagstruct(p
, t
);
55 void pa_pstream_send_simple_ack(pa_pstream
*p
, uint32_t tag
) {
58 pa_assert_se(t
= pa_tagstruct_new(NULL
, 0));
59 pa_tagstruct_putu32(t
, PA_COMMAND_REPLY
);
60 pa_tagstruct_putu32(t
, tag
);
61 pa_pstream_send_tagstruct(p
, t
);