Changeset 4298:f36b7f925311 in roaraudio for roard/req.c
- Timestamp:
- 09/03/10 17:38:05 (14 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
roard/req.c
r4291 r4298 26 26 #include "roard.h" 27 27 28 static void * _dataspace(struct roar_message * mes, char ** data, uint32_t flags[2], size_t len) { 29 if ( len <= LIBROAR_BUFFER_MSGDATA ) 30 return mes->data; 31 32 if ( *data != NULL ) 33 free(*data); 34 35 *data = malloc(len); 36 37 ROAR_DBG("_dataspace(mes=%p, data=%p, flags=%p, len=%llu): *data=%p", mes, data, flags, (long long unsigned int)len, *data); 38 39 if ( *data == NULL ) 40 return NULL; 41 42 flags[1] |= COMMAND_FLAG_OUT_LONGDATA; 43 44 return *data; 45 } 46 28 47 int req_on_noop (int client, struct roar_message * mes, char ** data, uint32_t flags[2]) { 29 48 mes->cmd = ROAR_CMD_OK; … … 815 834 ROAR_DBG("req_on_get_stream_para(client=%i, ...): data size for answer is %i 64 bit sub-packets", client, (int)needed); 816 835 817 if ( (needed*8) > LIBROAR_BUFFER_MSGDATA ) { 818 return -1; 819 if ( (d64 = malloc(needed*8)) == NULL ) 820 return -1; 821 822 *data = (char*)d64; 823 } 824 825 d64 = (int64_t*)mes->data; 836 ROAR_DBG("req_on_get_stream_para(client=%i, ...): mes->datalen=%i, data=%p{%p}", client, (int)mes->datalen, data, *data); 837 d64 = _dataspace(mes, data, flags, needed * 8); 838 ROAR_DBG("req_on_get_stream_para(client=%i, ...): d64=%p, data=%p{%p}", client, d64, data, *data); 826 839 827 840 if ( (d = roar_mm_malloc(mes->datalen)) == NULL ) 828 841 return -1; 829 842 843 ROAR_DBG("req_on_get_stream_para(client=%i, ...): d=%p, data=%p{%p}", client, d, data, *data); 844 845 846 ROAR_DBG("req_on_get_stream_para(client=%i, ...): mes->datalen=%i, data=%p{%p}", client, (int)mes->datalen, data, *data); 847 ROAR_DBG("req_on_get_stream_para(client=%i, ...): d64=%p, data=%p{%p}", client, d64, data, *data); 830 848 memcpy(d, mes->data, mes->datalen); 849 ROAR_DBG("req_on_get_stream_para(client=%i, ...): d64=%p, data=%p{%p}", client, d64, data, *data); 831 850 832 851 d64ptr = d64; 852 853 ROAR_DBG("req_on_get_stream_para(client=%i, ...): mes->datalen=%i, data=%p{%p}", client, (int)mes->datalen, data, *data); 854 ROAR_DBG("req_on_get_stream_para(client=%i, ...): d64=%p, data=%p{%p}", client, d64, data, *data); 833 855 834 856 if ( mes->stream == -1 ) { 835 857 for (i = 6; i < mes->datalen/2; i++) { 858 ROAR_DBG("req_on_get_stream_para(client=%i, ...): d64=%p, data=%p{%p}", client, d64, data, *data); 859 836 860 if ( (ltm = streams_ltm_get(d[i], d[5], d[3])) == NULL ) 837 861 return -1; … … 879 903 } 880 904 905 ROAR_DBG("req_on_get_stream_para(client=%i, ...): d64=%p, data=%p{%p}", client, d64, data, *data); 906 881 907 roar_mm_free(d); 882 908 … … 888 914 ROAR_DBG("req_on_get_stream_para(client=%i, ...): LTM d64=%p, d64ptr=%p", client, d64, d64ptr); 889 915 ROAR_DBG("req_on_get_stream_para(client=%i, ...): LTM final message has %i byte of data", client, (int)mes->datalen); 916 ROAR_DBG("req_on_get_stream_para(client=%i, ...): d64=%p, data=%p{%p}", client, d64, data, *data); 890 917 ROAR_DBG("req_on_get_stream_para(client=%i, ...): LTM GET_RAW request: OK. returning...", client); 891 918 break;
Note: See TracChangeset
for help on using the changeset viewer.