VLC  4.0.0-dev
variables.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * variables.h: object variables typedefs
3  *****************************************************************************
4  * Copyright (C) 1999-2012 VLC authors and VideoLAN
5  *
6  * Authors: Samuel Hocevar <sam@zoy.org>
7  *
8  * This program is free software; you can redistribute it and/or modify it
9  * under the terms of the GNU Lesser General Public License as published by
10  * the Free Software Foundation; either version 2.1 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public License
19  * along with this program; if not, write to the Free Software Foundation,
20  * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
21  *****************************************************************************/
22 
23 #ifndef LIBVLC_VARIABLES_H
24 # define LIBVLC_VARIABLES_H 1
25 
26 # include <vlc_list.h>
27 
28 struct vlc_res;
29 
30 /**
31  * Private LibVLC data for each object.
32  */
34 
36 {
37  vlc_object_t *parent; /**< Parent object (or NULL) */
38  const char *typename; /**< Object type human-readable name */
39 
40  /* Object variables */
41  void *var_root;
43 
44  /* Object resources */
45  struct vlc_res *resources;
46 };
47 
48 # define vlc_internals(o) ((o)->priv)
49 # define vlc_externals(priv) (abort(), (void *)(priv))
50 
51 extern void var_DestroyAll( vlc_object_t * );
52 
53 /**
54  * Return a list of all variable names
55  *
56  * There is no warranty that the returned variables will be still alive after
57  * the return of this function.
58  *
59  * @return a NULL terminated list of char *, each elements and the return value
60  * must be freed by the caller
61  */
63 
64 #endif
vlc_cond_broadcast
void vlc_cond_broadcast(vlc_cond_t *cond)
Wakes up all threads waiting on a condition variable.
Definition: threads.c:280
variable_ops_t::pf_free
void(* pf_free)(vlc_value_t *)
Definition: variables.c:61
CmpBool
static int CmpBool(vlc_value_t v, vlc_value_t w)
Definition: variables.c:103
callback_entry_t::pf_value_callback
vlc_callback_t pf_value_callback
Definition: variables.c:72
TriggerListCallback
static void TriggerListCallback(vlc_object_t *obj, variable_t *var, const char *name, int action, vlc_value_t *val)
Definition: variables.c:264
read_mpi
static size_t read_mpi(uint8_t *dst, const uint8_t *buf, size_t buflen, size_t bits)
Definition: update_crypto.c:77
GENERIC_KEY_SIGNATURE
@ GENERIC_KEY_SIGNATURE
Definition: update.h:40
count
size_t count
Definition: core.c:401
varcmp
static int varcmp(const void *a, const void *b)
Definition: variables.c:141
variable_t::i_type
int i_type
The type of the variable.
Definition: variables.c:80
variable_ops_t::pf_cmp
int(* pf_cmp)(vlc_value_t, vlc_value_t)
Definition: variables.c:59
VLC_VAR_BOOL_TOGGLE
@ VLC_VAR_BOOL_TOGGLE
Invert a boolean value (param ignored)
Definition: vlc_variables.h:112
TAB_CLEAN
#define TAB_CLEAN(count, tab)
Definition: vlc_arrays.h:61
CRC24_POLY
#define CRC24_POLY
Definition: update_crypto.c:353
var_GetAllNames
char ** var_GetAllNames(vlc_object_t *obj)
Return a list of all variable names.
Definition: variables.c:1155
var_Create
int() var_Create(vlc_object_t *p_this, const char *psz_name, int i_type)
Creates a VLC object variable.
Definition: variables.c:291
VLC_VAR_SETVALUE
#define VLC_VAR_SETVALUE
Set the value of this variable without triggering any callbacks.
Definition: vlc_variables.h:87
VLC_VAR_CLASS
#define VLC_VAR_CLASS
Definition: vlc_variables.h:40
vlc_stream_GetSize
static int vlc_stream_GetSize(stream_t *s, uint64_t *size)
Get the size of the stream.
Definition: vlc_stream.h:331
VLC_VAR_CLEARCHOICES
#define VLC_VAR_CLEARCHOICES
Definition: vlc_variables.h:98
packet_header_len
#define packet_header_len(c)
Definition: update_crypto.c:53
download_key
public_key_t * download_key(vlc_object_t *p_this, const uint8_t *p_longid, const uint8_t *p_signature_issuer)
Definition: update_crypto.c:931
leaf
@ leaf
Definition: vlc_fixups.h:505
vlc_res
Definition: objres.c:36
strcasecmp
int strcasecmp(const char *, const char *)
psz_name
const char * psz_name
Definition: text_style.c:53
ARRAY_APPEND
#define ARRAY_APPEND(array, elem)
Definition: vlc_arrays.h:203
VLC_VAR_GETCHOICES
#define VLC_VAR_GETCHOICES
Definition: vlc_variables.h:99
callback_entry_t::p_callback
void * p_callback
Definition: variables.c:74
var_InheritURational
int() var_InheritURational(vlc_object_t *object, unsigned *num, unsigned *den, const char *var)
Inherit a string as a fractional value.
Definition: variables.c:1073
VLC_VAR_SETTEXT
#define VLC_VAR_SETTEXT
Definition: vlc_variables.h:89
vlc_value_t::x
int32_t x
Definition: vlc_common.h:464
unlikely
#define unlikely(p)
Predicted false condition.
Definition: vlc_common.h:227
var_DelCallback
void() var_DelCallback(vlc_object_t *p_this, const char *psz_name, vlc_callback_t pf_callback, void *p_data)
Deregisters a callback from a variable.
Definition: variables.c:854
TEXT_SIGNATURE
@ TEXT_SIGNATURE
Definition: update.h:37
vlc_common.h
variable_t::psz_text
char * psz_text
The variable display name, mainly for use by the interfaces.
Definition: variables.c:76
Lookup
static variable_t * Lookup(vlc_object_t *obj, const char *psz_name)
Definition: variables.c:150
ISSUER_SUBPACKET
@ ISSUER_SUBPACKET
Definition: update.h:48
vlc_object_internals::resources
struct vlc_res * resources
Definition: variables.h:45
vlc_object_internals::var_lock
vlc_mutex_t var_lock
Definition: variables.h:42
VLC_VAR_DOINHERIT
#define VLC_VAR_DOINHERIT
Creation flag.
Definition: vlc_variables.h:69
tdelete
void * tdelete(const void *key, void **rootp, int(*cmp)(const void *, const void *))
DelCallback
static void DelCallback(vlc_object_t *p_this, const char *psz_name, const callback_entry_t *restrict match, vlc_callback_type_t i_type)
Definition: variables.c:811
variable_t::i_usage
unsigned i_usage
Reference count.
Definition: variables.c:81
var_Inherit
int var_Inherit(vlc_object_t *p_this, const char *psz_name, int i_type, vlc_value_t *p_val)
Finds the value of a variable.
Definition: variables.c:1039
addr_ops
static const struct variable_ops_t addr_ops
Definition: variables.c:134
vlc_object_internals::var_root
void * var_root
Definition: variables.h:41
CmpString
static int CmpString(vlc_value_t v, vlc_value_t w)
Definition: variables.c:113
VLC_VAR_ADDCHOICE
#define VLC_VAR_ADDCHOICE
Definition: vlc_variables.h:96
var_GetAndSet
int() var_GetAndSet(vlc_object_t *p_this, const char *psz_name, int i_action, vlc_value_t *p_val)
Perform an atomic read-modify-write of a variable.
Definition: variables.c:594
variable_t::b_incallback
bool b_incallback
Set to TRUE if the variable is in a callback.
Definition: variables.c:93
verify_signature_dsa
static int verify_signature_dsa(signature_packet_t *sign, public_key_packet_t *p_key, uint8_t *p_hash)
Definition: update_crypto.c:520
vlc_value_t::p_address
void * p_address
Definition: vlc_common.h:463
vlc_charset.h
var_AddCallback
void() var_AddCallback(vlc_object_t *p_this, const char *psz_name, vlc_callback_t pf_callback, void *p_data)
Registers a callback for a variable.
Definition: variables.c:801
parse_public_key
int parse_public_key(const uint8_t *p_key_data, size_t i_key_len, public_key_t *p_key, const uint8_t *p_sig_issuer)
Definition: update_crypto.c:606
vlc_cond_wait
void vlc_cond_wait(vlc_cond_t *cond, vlc_mutex_t *mutex)
Waits on a condition variable.
Definition: threads.c:340
VLC_VAR_BOOL
#define VLC_VAR_BOOL
Definition: vlc_variables.h:49
signature_packet_t::issuer_longid
uint8_t issuer_longid[8]
Definition: update.h:83
VLC_VAR_DELCHOICE
#define VLC_VAR_DELCHOICE
Definition: vlc_variables.h:97
public_key_packet_t::timestamp
uint8_t timestamp[4]
Definition: update.h:55
callback_entry_t
Definition: variables.c:45
msg_Dbg
#define msg_Dbg(p_this,...)
Definition: vlc_messages.h:106
vlc_stream_NewURL
#define vlc_stream_NewURL(a, b)
Definition: vlc_stream.h:422
CmpAddress
static int CmpAddress(vlc_value_t v, vlc_value_t w)
Definition: variables.c:121
CleanupVar
static void CleanupVar(void *var)
Definition: variables.c:410
int_ops
static const struct variable_ops_t int_ops
Definition: variables.c:137
callback_entry_t::pf_list_callback
vlc_list_callback_t pf_list_callback
Definition: variables.c:73
var_AddListCallback
void() var_AddListCallback(vlc_object_t *p_this, const char *psz_name, vlc_list_callback_t pf_callback, void *p_data)
Register a callback for a list variable.
Definition: variables.c:879
var_InheritString
static char * var_InheritString(vlc_object_t *obj, const char *name)
Definition: vlc_variables.h:705
var_GetChecked
int() var_GetChecked(vlc_object_t *p_this, const char *psz_name, int expected_type, vlc_value_t *p_val)
Definition: variables.c:726
postorder
@ postorder
Definition: vlc_fixups.h:503
public_key_t::key
public_key_packet_t key
Definition: update.h:123
VLC_EGENERIC
#define VLC_EGENERIC
Unspecified error.
Definition: vlc_common.h:474
SIGNATURE_PACKET
@ SIGNATURE_PACKET
Definition: update.h:49
VLC_VAR_ADDRESS
#define VLC_VAR_ADDRESS
Definition: vlc_variables.h:53
public_key_t::psz_username
uint8_t * psz_username
Definition: update.h:121
hash_from_text
uint8_t * hash_from_text(const char *psz_string, signature_packet_t *p_sig)
Definition: update_crypto.c:791
var_SetChecked
int() var_SetChecked(vlc_object_t *p_this, const char *psz_name, int expected_type, vlc_value_t val)
Definition: variables.c:676
variables.h
VLC_VAR_INTEGER
#define VLC_VAR_INTEGER
Definition: vlc_variables.h:50
VLC_VAR_STRING
#define VLC_VAR_STRING
Definition: vlc_variables.h:51
TriggerCallback
static void TriggerCallback(vlc_object_t *obj, variable_t *var, const char *name, vlc_value_t prev)
Definition: variables.c:237
VLC_VAR_TYPE
#define VLC_VAR_TYPE
Definition: vlc_variables.h:39
VLC_VAR_FLOAT
#define VLC_VAR_FLOAT
Definition: vlc_variables.h:52
update.h
signature_packet_t::rsa
struct signature_packet_t::@88::@92 rsa
var_DelListCallback
void() var_DelListCallback(vlc_object_t *p_this, const char *psz_name, vlc_list_callback_t pf_callback, void *p_data)
Remove a callback from a list variable.
Definition: variables.c:889
VLC_VAR_INTEGER_OR
@ VLC_VAR_INTEGER_OR
Binary OR over an integer bits field.
Definition: vlc_variables.h:114
vlc_ureduce
VLC_EXPORT bool vlc_ureduce(unsigned *, unsigned *, uint64_t, uint64_t, uint64_t)
verify_signature_rsa
static int verify_signature_rsa(signature_packet_t *sign, public_key_packet_t *p_key, uint8_t *p_hash)
Definition: update_crypto.c:467
hash_from_binary_file
static int hash_from_binary_file(const char *psz_file, gcry_md_hd_t hd)
Definition: update_crypto.c:725
var_Destroy
void() var_Destroy(vlc_object_t *p_this, const char *psz_name)
Destroys a VLC object variable.
Definition: variables.c:382
config_IsSafe
bool config_IsSafe(const char *)
Definition: core.c:73
asprintf
int asprintf(char **, const char *,...)
var_Change
int() var_Change(vlc_object_t *p_this, const char *psz_name, int i_action,...)
Performs a special action on a variable.
Definition: variables.c:423
VLC_VAR_GETSTEP
#define VLC_VAR_GETSTEP
Definition: vlc_variables.h:94
config_GetType
int config_GetType(const char *psz_name)
Gets a configuration item type.
Definition: core.c:48
vlc_value_t::i_int
int64_t i_int
Definition: vlc_common.h:459
signature_packet_t::dsa
struct signature_packet_t::@88::@91 dsa
variable_t::choices
vlc_value_t * choices
List of choices.
Definition: variables.c:87
vlc_mutex_t
Mutex.
Definition: vlc_threads.h:225
variable_t::max
vlc_value_t max
Definition: variables.c:84
signature_packet_t::digest_algo
uint8_t digest_algo
Definition: update.h:80
var_Get
int() var_Get(vlc_object_t *p_this, const char *psz_name, vlc_value_t *p_val)
Gets a variable value.
Definition: variables.c:755
PERSONA_KEY_SIGNATURE
@ PERSONA_KEY_SIGNATURE
Definition: update.h:41
VLC_VAR_SETMINMAX
#define VLC_VAR_SETMINMAX
Definition: vlc_variables.h:102
hash_from_public_key
uint8_t * hash_from_public_key(public_key_t *p_pkey)
Definition: update_crypto.c:846
vlc_callback_t
int(* vlc_callback_t)(vlc_object_t *, char const *, vlc_value_t, vlc_value_t, void *)
Definition: vlc_common.h:493
vlc_b64_decode_binary_to_buffer
size_t vlc_b64_decode_binary_to_buffer(void *dst, size_t size, const char *restrict src)
Definition: strings.c:416
USER_ID_FOUND
#define USER_ID_FOUND
variable_ops_t
struct variable_ops_t variable_ops_t
TwalkGetNames
static void TwalkGetNames(const void *data, const VISIT which, const int depth)
Definition: variables.c:1142
var_TriggerCallback
void() var_TriggerCallback(vlc_object_t *p_this, const char *psz_name)
Triggers callbacks on a variable.
Definition: variables.c:864
FreeDummy
static void FreeDummy(vlc_value_t *p_val)
Definition: variables.c:129
crc_octets
static long crc_octets(uint8_t *octets, size_t len)
Definition: update_crypto.c:355
TAB_ERASE
#define TAB_ERASE(count, tab, index)
Definition: vlc_arrays.h:92
vlc_object_internals::parent
vlc_object_t * parent
Parent object (or NULL)
Definition: variables.h:37
signature_packet_t::algo_specific
union signature_packet_t::@88 algo_specific
vlc_value_t::y
int32_t y
Definition: vlc_common.h:464
VLC_VAR_VOID
#define VLC_VAR_VOID
Definition: vlc_variables.h:48
vlc_value_t::b_bool
bool b_bool
Definition: vlc_common.h:460
signature_packet_t
Definition: update.h:74
vlc_assert_unreachable
#define vlc_assert_unreachable()
Impossible branch assertion.
Definition: vlc_common.h:253
vlc_fopen
FILE * vlc_fopen(const char *filename, const char *mode)
Opens a FILE pointer.
Definition: filesystem.c:49
CmpFloat
static int CmpFloat(vlc_value_t v, vlc_value_t w)
Definition: variables.c:120
var_OptionParse
void var_OptionParse(vlc_object_t *p_obj, const char *psz_option, bool trusted)
Parse a stringified option This function parse a string option and create the associated object varia...
Definition: variables.c:909
var_GetAllNames
char ** var_GetAllNames(vlc_object_t *)
Return a list of all variable names.
Definition: variables.c:1155
FreeString
static void FreeString(vlc_value_t *p_val)
Definition: variables.c:130
parse_signature_v4_packet
static size_t parse_signature_v4_packet(signature_packet_t *p_sig, const uint8_t *p_buf, size_t i_sig_len)
Definition: update_crypto.c:181
us_atof
double us_atof(const char *str)
us_atof() has the same prototype as ANSI C atof() but it expects a dot as decimal separator,...
Definition: charset.c:88
bool_ops
static const struct variable_ops_t bool_ops
Definition: variables.c:135
vlc_callback_type_t
vlc_callback_type_t
Definition: variables.c:760
var_DestroyAll
void var_DestroyAll(vlc_object_t *obj)
Definition: variables.c:415
PUBLIC_KEY_PACKET
@ PUBLIC_KEY_PACKET
Definition: update.h:50
i_type
int i_type
Definition: httpd.c:1269
variable_ops_t::pf_dup
void(* pf_dup)(vlc_value_t *)
Definition: variables.c:60
READ_MPI
#define READ_MPI(d, bits)
Definition: update_crypto.c:96
ARRAY_INIT
#define ARRAY_INIT(array)
Definition: vlc_arrays.h:189
vlc_value_t::f_float
float f_float
Definition: vlc_common.h:461
AddCallback
static void AddCallback(vlc_object_t *p_this, const char *psz_name, callback_entry_t *restrict entry, vlc_callback_type_t i_type)
Definition: variables.c:766
vlc_value_callback
@ vlc_value_callback
Definition: variables.c:762
void_ops
static const struct variable_ops_t void_ops
Definition: variables.c:133
variable_t::step
vlc_value_t step
Definition: variables.c:84
USER_ID_PACKET
@ USER_ID_PACKET
Definition: update.h:51
vlc_list_callback
@ vlc_list_callback
Definition: variables.c:763
scalar_number
static uint32_t scalar_number(const uint8_t *p, int header_len)
Definition: update_crypto.c:56
vlc_strings.h
VLC_VAR_GETTEXT
#define VLC_VAR_GETTEXT
Definition: vlc_variables.h:90
VLC_VAR_HASCHOICE
#define VLC_VAR_HASCHOICE
Definition: vlc_variables.h:62
variable_t::min
vlc_value_t min
If the variable has min/max/step values.
Definition: variables.c:84
public_key_packet_t::algo
uint8_t algo
Definition: update.h:56
VLC_VAR_CHOICESCOUNT
#define VLC_VAR_CHOICESCOUNT
Definition: vlc_variables.h:101
public_key_packet_t::version
uint8_t version
Definition: update.h:54
signature_packet_t::v3
struct signature_packet_t::@87::@90 v3
TAB_APPEND
#define TAB_APPEND(count, tab, p)
Definition: vlc_arrays.h:79
VLC_VAR_ISCOMMAND
#define VLC_VAR_ISCOMMAND
Definition: vlc_variables.h:64
variable_t::list_callbacks
callback_entry_t * list_callbacks
Registered list callbacks.
Definition: variables.c:98
vlc_list.h
config_GetFloat
float config_GetFloat(const char *psz_name)
Gets a floating point configuration item's value.
Definition: core.c:105
parse_signature_packet
static int parse_signature_packet(signature_packet_t *p_sig, const uint8_t *p_buf, size_t i_packet_len)
Definition: update_crypto.c:277
VLC_VAR_INTEGER_NAND
@ VLC_VAR_INTEGER_NAND
Binary NAND over an integer bits field.
Definition: vlc_variables.h:115
vlc_value_t::psz_string
char * psz_string
Definition: vlc_common.h:462
vlc_value_t::coords
struct vlc_value_t::@193 coords
stream_t
stream_t definition
Definition: vlc_stream.h:46
VLC_VAR_SETSTEP
#define VLC_VAR_SETSTEP
Definition: vlc_variables.h:80
POSITIVE_KEY_SIGNATURE
@ POSITIVE_KEY_SIGNATURE
Definition: update.h:43
variable_t::choices_text
char ** choices_text
List of friendly names for the choices.
Definition: variables.c:89
vlc_cleanup_pop
#define vlc_cleanup_pop()
Unregisters the last cancellation handler.
Definition: vlc_threads.h:1018
DECL_ARRAY
#define DECL_ARRAY(type)
Definition: vlc_arrays.h:181
VLC_ENOOBJ
#define VLC_ENOOBJ
Object not found.
Definition: vlc_common.h:482
VISIT
VISIT
Definition: vlc_fixups.h:501
WaitUnused
static void WaitUnused(vlc_object_t *obj, variable_t *var)
Waits until the variable is inactive (i.e.
Definition: variables.c:227
update_release_t::psz_url
char * psz_url
Download URL.
Definition: vlc_update.h:46
rsa_pkcs1_encode_sig
static int rsa_pkcs1_encode_sig(gcry_mpi_t *r_result, size_t size, const uint8_t *hash, int algo)
Definition: update_crypto.c:436
public_key_t::sig
signature_packet_t sig
Definition: update.h:125
variable_t::ops
const variable_ops_t * ops
Definition: variables.c:78
vlc_fs.h
variable_t::value_callbacks
callback_entry_t * value_callbacks
Registered value callbacks.
Definition: variables.c:96
callback_entry_t::next
struct callback_entry_t * next
Definition: variables.c:69
vlc_stream_Read
ssize_t vlc_stream_Read(stream_t *s, void *buf, size_t len)
Reads data from a byte stream.
Definition: stream.c:485
xmalloc
static void * xmalloc(size_t len)
Definition: vlc_common.h:1175
signature_packet_t::public_key_algo
uint8_t public_key_algo
Definition: update.h:79
variable_t::choices_count
size_t choices_count
Definition: variables.c:90
vlc_object_t
VLC object common members.
Definition: vlc_objects.h:43
public_key_t
Definition: update.h:118
variable_t::psz_name
char * psz_name
The variable unique name (must be first)
Definition: variables.c:70
VLC_ENOMEM
#define VLC_ENOMEM
Not enough memory.
Definition: vlc_common.h:476
variable_ops_t
Definition: variables.c:57
CheckValue
static void CheckValue(variable_t *var, vlc_value_t *val)
Adjusts a value to fit the constraints for a certain variable:
Definition: variables.c:191
verify_signature
int verify_signature(signature_packet_t *sign, public_key_packet_t *p_key, uint8_t *p_hash)
Definition: update_crypto.c:588
parse_signature_v3_packet
static size_t parse_signature_v3_packet(signature_packet_t *p_sig, const uint8_t *p_buf, size_t i_sig_len)
Definition: update_crypto.c:144
tdestroy
void tdestroy(void *root, void(*free_node)(void *nodep))
signature_packet_t::v4
struct signature_packet_t::@87::@89 v4
vlc_stream.h
public_key_packet_t::dsa
struct public_key_packet_t::@84::@85 dsa
VLC_SUCCESS
#define VLC_SUCCESS
No error.
Definition: vlc_common.h:472
strdup
char * strdup(const char *)
var_LocationParse
int() var_LocationParse(vlc_object_t *obj, const char *mrl, const char *pref)
Parses a string with multiple options.
Definition: variables.c:1010
tfind
void * tfind(const void *key, void *const *rootp, int(*cmp)(const void *, const void *))
psz_value
char psz_value[8]
Definition: vout_intf.c:99
hash_finish
static uint8_t * hash_finish(gcry_md_hd_t hd, signature_packet_t *p_sig)
Definition: update_crypto.c:744
VLC_VAR_GETMAX
#define VLC_VAR_GETMAX
Definition: vlc_variables.h:93
VLC_VAR_COORDS
#define VLC_VAR_COORDS
Definition: vlc_variables.h:54
vlc_mutex_lock
void vlc_mutex_lock(vlc_mutex_t *mtx)
Acquires a mutex.
Definition: threads.c:158
name
const char name[16]
Definition: httpd.c:1268
var_Type
int() var_Type(vlc_object_t *p_this, const char *psz_name)
Get the type of a variable.
Definition: variables.c:655
mpi_len
static uint32_t mpi_len(const uint8_t *mpi)
Definition: update_crypto.c:72
pgp_unarmor
static int pgp_unarmor(const char *p_ibuf, size_t i_ibuf_len, uint8_t *p_obuf, size_t i_obuf_len)
Definition: update_crypto.c:377
entry
Definition: fourcc_gen.c:51
vlc_cond_t
Condition variable.
Definition: vlc_threads.h:349
callback_entry_t::p_data
void * p_data
Definition: variables.c:76
Destroy
static void Destroy(variable_t *p_var)
Definition: variables.c:160
DupString
static void DupString(vlc_value_t *p_val)
Definition: variables.c:124
config_GetInt
int64_t config_GetInt(const char *psz_name)
Gets an integer configuration item's value.
Definition: core.c:89
CASUAL_KEY_SIGNATURE
@ CASUAL_KEY_SIGNATURE
Definition: update.h:42
configuration.h
public_key_packet_t::rsa
struct public_key_packet_t::@84::@86 rsa
strtoll
long long int strtoll(const char *, char **, int)
public_key_t::longid
uint8_t longid[8]
Definition: update.h:120
VLC_ENOVAR
#define VLC_ENOVAR
Variable not found.
Definition: vlc_common.h:484
vlc_stream_Delete
void vlc_stream_Delete(stream_t *s)
Destroy a stream.
Definition: stream.c:133
var_DestroyAll
void var_DestroyAll(vlc_object_t *)
Definition: variables.c:415
variable_t::wait
vlc_cond_t wait
Definition: variables.c:100
vlc_object_parent
#define vlc_object_parent(o)
Definition: vlc_objects.h:158
PUBLIC_KEY_FOUND
#define PUBLIC_KEY_FOUND
libvlc.h
vlc_list_callback_t
int(* vlc_list_callback_t)(vlc_object_t *, char const *, int, vlc_value_t *, void *)
Definition: vlc_common.h:502
var_Set
int() var_Set(vlc_object_t *p_this, const char *psz_name, vlc_value_t val)
Sets a variable value.
Definition: variables.c:721
SIGNATURE_FOUND
#define SIGNATURE_FOUND
CmpInt
static int CmpInt(vlc_value_t v, vlc_value_t w)
Definition: variables.c:108
variable_t::val
vlc_value_t val
The variable's exported value.
Definition: variables.c:73
U32_AT
static uint32_t U32_AT(const void *p)
Reads 32 bits in network byte order.
Definition: vlc_common.h:995
likely
#define likely(p)
Predicted true condition.
Definition: vlc_common.h:218
CRC24_INIT
#define CRC24_INIT
Definition: update_crypto.c:352
tsearch
void * tsearch(const void *key, void **rootp, int(*cmp)(const void *, const void *))
vlc_internals
#define vlc_internals(o)
Definition: variables.h:48
signature_packet_t::type
uint8_t type
Definition: update.h:78
signature_packet_t::version
uint8_t version
Definition: update.h:76
vlc_arrays.h
float_ops
static const struct variable_ops_t float_ops
Definition: variables.c:136
twalk
void twalk(const void *root, void(*action)(const void *nodep, VISIT which, int depth))
signature_packet_t::hash_verification
uint8_t hash_verification[2]
Definition: update.h:82
twalk_ctx
static thread_local void * twalk_ctx
Definition: variables.c:1140
packet_type
#define packet_type(c)
Definition: update_crypto.c:52
DupDummy
static void DupDummy(vlc_value_t *p_val)
Definition: variables.c:123
download_signature
int download_signature(vlc_object_t *p_this, signature_packet_t *p_sig, const char *psz_url)
Definition: update_crypto.c:996
vlc_value_t
VLC value structure.
Definition: vlc_common.h:457
variable_t
The structure describing a variable.
Definition: variables.c:68
signature_packet_t::specific
union signature_packet_t::@87 specific
VLC_VAR_GETMIN
#define VLC_VAR_GETMIN
Definition: vlc_variables.h:92
vlc_mutex_unlock
void vlc_mutex_unlock(vlc_mutex_t *mtx)
Releases a mutex.
Definition: threads.c:209
public_key_packet_t::sig
union public_key_packet_t::@84 sig
var
const char var[sizeof("video")]
Definition: player.c:1732
public_key_packet_t
Definition: update.h:51
parse_public_key_packet
static int parse_public_key_packet(public_key_packet_t *p_key, const uint8_t *p_buf, size_t i_packet_len)
Definition: update_crypto.c:107
callback_entry_t
struct callback_entry_t callback_entry_t
msg_Err
#define msg_Err(p_this,...)
Definition: vlc_messages.h:102
coords_ops
static const struct variable_ops_t coords_ops
Definition: variables.c:139
config_GetPsz
char * config_GetPsz(const char *psz_name)
Gets a string configuration item's value.
Definition: core.c:123
string_ops
static const struct variable_ops_t string_ops
Definition: variables.c:138
VLC_VAR_INTEGER_ADD
@ VLC_VAR_INTEGER_ADD
Add parameter to an integer value.
Definition: vlc_variables.h:113
hash_from_file
uint8_t * hash_from_file(const char *psz_file, signature_packet_t *p_sig)
Definition: update_crypto.c:826
mutex_cleanup_push
#define mutex_cleanup_push(lock)
Definition: vlc_threads.h:1053
BINARY_SIGNATURE
@ BINARY_SIGNATURE
Definition: update.h:36
p
#define p(t)
vlc_object_internals
Definition: variables.h:35