Changeset 5838:52ca1a88734e in roaraudio for libroar/basic.c
- Timestamp:
- 01/07/13 02:36:01 (11 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libroar/basic.c
r5832 r5838 46 46 int r; 47 47 char fhstr[12]; 48 size_t len; 48 49 49 50 if ( !strncmp(server, "+fork=", 6) ) { … … 78 79 daemonimage = "roard"; 79 80 81 len = roar_mm_strlen(daemonimage) + 9; // 9 = '+fork=' + 'X:' + '\0' 82 con->server_name = roar_mm_malloc(len); 83 if ( con->server_name != NULL ) { 84 snprintf(con->server_name, len, "+fork=%s%s", mode == NORMAL ? "d:" : "!", daemonimage); 85 } 86 80 87 if ( socketpair(AF_UNIX, SOCK_STREAM, 0, socks) == -1 ) { 81 88 roar_err_from_errno(); … … 164 171 int fh = -1; 165 172 int err; 173 int ret; 166 174 167 175 if ( con == NULL || server == NULL ) { … … 177 185 return -1; 178 186 con->flags |= ROAR_CON_FLAGS_VIO; 187 con->server_name = roar_mm_strdup(server); 179 188 return 0; 180 189 } else if ( !strcmp(server, "+fork") || !strncmp(server, "+fork=", 6) ) { 181 190 return _start_server(con, server, type, flags, timeout); 182 191 } else if ( !strcmp(server, "+internal") || !strncmp(server, "+internal=", 10) ) { 183 return _connect_internal(con, server, type, flags, timeout); 192 ret = _connect_internal(con, server, type, flags, timeout); 193 if ( ret == 0 ) 194 con->server_name = roar_mm_strdup(server); 195 return ret; 184 196 } 185 197 … … 217 229 218 230 if ( *obj == 0 ) { 219 #ifdef DN_MAXOBJL220 231 roar_mm_strlcat(user_sock, ROAR_DEFAULT_OBJECT, sizeof(user_sock)-1); 221 232 user_sock[sizeof(user_sock)-1] = 0; 222 #else 223 ROAR_ERR("roar_connect_raw(*): size of DECnet object unknown."); 224 #endif 225 } 226 ROAR_DBG("roar_connect_raw(*): user_sock='%s'", user_sock); 233 } 234 235 ROAR_DBG("roar_connect_raw(*): user_sock='%s'", user_sock); 227 236 } 228 237 … … 265 274 } 266 275 276 con->server_name = roar_mm_strdup(server); 277 267 278 roar_err_set(ROAR_ERROR_NONE); 268 279 return 0; … … 449 460 return -1; 450 461 451 // TODO: this should be moved to be within _connect_server() so it also stores server names of auto located servers.452 if ( server != NULL ) {453 con->server_name = roar_mm_strdup(server);454 }455 456 462 return 0; 457 463 }
Note: See TracChangeset
for help on using the changeset viewer.