Changeset 5149:b7345c9daac1 in roaraudio
- Timestamp:
- 10/15/11 15:24:11 (11 years ago)
- Branch:
- default
- Phase:
- public
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
include/libroar/caps.h
r4708 r5149 52 52 }; 53 53 54 const struct roar_stds * libroar_libstds(void); 55 54 56 int roar_caps_to_msg(struct roar_message * mes, struct roar_caps * caps, void ** data); 55 57 int roar_caps_from_msg(struct roar_caps * caps, struct roar_message * mes, void * data); -
libroar/caps.c
r4944 r5149 36 36 #include "libroar.h" 37 37 38 const struct roar_stds * libroar_libstds(void) { 39 static const uint32_t std[] = { 40 ROAR_STD_MAKE(ROAR_STDV_ROARAUDIO, 0, 0) // ra-msg-v0 41 }; 42 static const struct roar_stds stds = {.stds_len = sizeof(std)/sizeof(*std), .stds = (uint32_t*)std}; 43 return &stds; 44 } 45 38 46 int roar_caps_to_msg(struct roar_message * mes, struct roar_caps * caps, void ** data) { 39 47 char * datap; … … 116 124 flags = 0; 117 125 118 if ( con == NULL ) 119 return -1; 126 if ( con == NULL ) { 127 roar_err_set(ROAR_ERROR_FAULT); 128 return -1; 129 } 120 130 121 131 if ( out != NULL ) … … 211 221 struct roar_stds * ret; 212 222 213 if ( len == 0 ) 223 if ( len == 0 ) { 224 roar_err_set(ROAR_ERROR_INVAL); 214 225 return NULL; 226 } 215 227 216 228 ret = roar_mm_malloc(sizeof(struct roar_stds)); … … 235 247 236 248 int roar_stds_free(struct roar_stds * stds) { 237 if ( stds == NULL ) 238 return -1; 249 if ( stds == NULL ) { 250 roar_err_set(ROAR_ERROR_FAULT); 251 return -1; 252 } 239 253 240 254 if ( stds->stds != NULL ) … … 260 274 int i; 261 275 276 if ( vendor == NULL ) { 277 roar_err_set(ROAR_ERROR_FAULT); 278 return -1; 279 } 280 262 281 for (i = 0; _libroar_std_vendors[i].name != NULL; i++) 263 282 if ( !strcasecmp(_libroar_std_vendors[i].name, vendor) ) 264 283 return _libroar_std_vendors[i].vendor; 265 284 285 roar_err_set(ROAR_ERROR_NOENT); 266 286 return -1; 267 287 } … … 274 294 return _libroar_std_vendors[i].name; 275 295 296 roar_err_set(ROAR_ERROR_NOENT); 276 297 return NULL; 277 298 } -
roarclients/roarctl.c
r5144 r5149 66 66 " --verbose -v - Show verbose output\n" 67 67 " --list-aiprofiles - Show audio info profiles and exit\n" 68 " --list-libstandards - Gets list of library (libroar) supported standards\n" 68 69 " --enum-servers - Show a list of possible servers\n" 69 70 ); … … 128 129 "\n" 129 130 " serverstandards - Gets list of server supported standards\n" 131 " libstandards - Gets list of library (libroar) supported standards\n" 130 132 "\n" 131 133 " listclients - Gets Information about clients\n" … … 295 297 } 296 298 297 void server_standards (struct roar_connection * con) { 298 struct roar_stds * stds; 299 static void print_stds (const struct roar_stds * stds) { 299 300 size_t i; 300 301 int vendor, standard, version; 301 302 char numbuf[2][8]; 302 303 const char * vendor_name; 303 304 if ( roar_caps_stds(con, &stds, NULL, -1) == -1 ) {305 fprintf(stderr, "Error: can not get server standards\n");306 return;307 }308 304 309 305 for (i = 0; i < stds->stds_len; i++) { … … 327 323 printf("Server standard : %s-%i%s\n", vendor_name, standard, numbuf[1]); 328 324 } 325 } 326 327 void server_standards (struct roar_connection * con) { 328 struct roar_stds * stds; 329 330 if ( roar_caps_stds(con, &stds, NULL, -1) == -1 ) { 331 fprintf(stderr, "Error: can not get server standards\n"); 332 return; 333 } 334 335 print_stds(stds); 336 337 roar_stds_free(stds); 338 } 339 340 void lib_standards (void) { 341 print_stds(libroar_libstds()); 329 342 } 330 343 … … 1083 1096 list_aiprofiles(); 1084 1097 return 0; 1098 } else if ( strcmp(k, "--list-libstandards") == 0 ) { 1099 lib_standards(); 1100 return 0; 1085 1101 } else if ( strcmp(k, "--enum-servers") == 0 ) { 1086 1102 enum_servers(); … … 1186 1202 } else if ( !strcmp(k, "serverstandards") ) { 1187 1203 server_standards(&con); 1204 } else if ( !strcmp(k, "libstandards") ) { 1205 lib_standards(); 1188 1206 } else if ( !strcmp(k, "listclients") ) { 1189 1207 list_clients(&con);
Note: See TracChangeset
for help on using the changeset viewer.