diff --git a/Makefile b/Makefile index ef9062de9ae0703f3b41982f433406c0c14160f3..5f5f6d625f9ff61c6ee4cfae1ce44e6fc5210887 100755 --- a/Makefile +++ b/Makefile @@ -100,7 +100,7 @@ uninstall: objs: $(CC) -I$(DIR_BP_IMPL) $(INC) $(OPT) -c src/*.c $(CC) $(INC) $(OPT) -c src/bp_implementations/*.c - g++ $(INC) $(OPT) -c src/bp_implementations/*.cpp + g++ $(INC) $(OPT) -Wno-deprecated -c src/bp_implementations/*.cpp help: @echo "Usage:" diff --git a/src/bp_implementations/al_bp_ibr.cpp b/src/bp_implementations/al_bp_ibr.cpp index 85eee5f8dd5a363074f8a6559637d78710796138..d1d6de75264feac95abcbc26b2cc99f073be551a 100755 --- a/src/bp_implementations/al_bp_ibr.cpp +++ b/src/bp_implementations/al_bp_ibr.cpp @@ -589,14 +589,14 @@ al_bp_error_t bp_ibr_recv(al_bp_handle_t handle, memset(spec, 0, sizeof(*spec)); - strncpy(spec->source.uri, bundle.source.getString().c_str(), AL_BP_MAX_ENDPOINT_ID); + memcpy(spec->source.uri, bundle.source.getString().c_str(), AL_BP_MAX_ENDPOINT_ID); spec->source.uri[AL_BP_MAX_ENDPOINT_ID - 1] = '\0'; //ensures the string terminator - strncpy(spec->dest.uri, bundle.destination.getString().c_str(), AL_BP_MAX_ENDPOINT_ID); + memcpy(spec->dest.uri, bundle.destination.getString().c_str(), AL_BP_MAX_ENDPOINT_ID); spec->dest.uri[AL_BP_MAX_ENDPOINT_ID - 1] = '\0'; //I assume spec->replyto is the report-to EID described in RFC5050... - strncpy(spec->replyto.uri, bundle.reportto.getString().c_str(), AL_BP_MAX_ENDPOINT_ID); + memcpy(spec->replyto.uri, bundle.reportto.getString().c_str(), AL_BP_MAX_ENDPOINT_ID); spec->replyto.uri[AL_BP_MAX_ENDPOINT_ID - 1] = '\0'; //...otherwise use // strcpy(spec->replyto.uri, "dtn:none"); //as per al_bp_ion.c @@ -745,7 +745,7 @@ al_bp_error_t bp_ibr_recv(al_bp_handle_t handle, payload->status_report = new al_bp_bundle_status_report_t; memset(payload->status_report, 0, sizeof(*payload->status_report)); - strncpy(payload->status_report->bundle_id.source.uri, srblock.bundleid.source.getString().c_str(), AL_BP_MAX_ENDPOINT_ID); + memcpy(payload->status_report->bundle_id.source.uri, srblock.bundleid.source.getString().c_str(), AL_BP_MAX_ENDPOINT_ID); payload->status_report->bundle_id.source.uri[AL_BP_MAX_ENDPOINT_ID - 1] = '\0'; payload->status_report->bundle_id.creation_ts.secs = srblock.bundleid.timestamp.get(); diff --git a/src/bp_implementations/al_bp_ion.c b/src/bp_implementations/al_bp_ion.c index 4fe8875556cf35d58513deb70b500ccfefd8c6ec..36e66359cdd5337aa3fc26607de40806f9bb2a1a 100755 --- a/src/bp_implementations/al_bp_ion.c +++ b/src/bp_implementations/al_bp_ion.c @@ -81,10 +81,7 @@ al_bp_error_t bp_ion_build_local_eid(al_bp_endpoint_id_t* local_eid, } } long int service_num = strtol(service_tag,NULL,10); - sprintf(eidString, "%s:%lu", - CBHESCHEMENAME,(unsigned long int) getOwnNodeNbr()); - sprintf(eidString, "%s.%lu", - eidString,service_num); + sprintf(eidString, "%s:%lu.%lu", CBHESCHEMENAME, (unsigned long int) getOwnNodeNbr(), service_num); (*local_eid) = ion_al_endpoint_id(eidString); } else if(type == DTN_SCHEME) @@ -460,7 +457,7 @@ void bp_ion_copy_eid(al_bp_endpoint_id_t* dst, al_bp_endpoint_id_t* src) ion_src = al_ion_endpoint_id((*src)); length = strlen(ion_src)+1; ion_dst = (char *)malloc(sizeof(char)*length); - strncpy(ion_dst,ion_src,length); + memcpy(ion_dst,ion_src,length); (*dst) = ion_al_endpoint_id(ion_dst); free(ion_dst); free(ion_src); @@ -473,7 +470,7 @@ al_bp_error_t bp_ion_parse_eid_string(al_bp_endpoint_id_t* eid, const char* str) MetaEid metaEid; VScheme * vscheme; endpoint = (char *) malloc(sizeof(char)*AL_BP_MAX_ENDPOINT_ID); - strncpy(endpoint,str,strlen(str)+1); + memcpy(endpoint,str,strlen(str)+1); if(parseEidString(endpoint,&metaEid,&vscheme,&psmAddress) == 0) { free(endpoint); return BP_EPARSEEID; diff --git a/src/bp_implementations/al_bp_ion_conversions.c b/src/bp_implementations/al_bp_ion_conversions.c index f00ab38a4aff091f7b7c589422d7733e35b9660c..94465daed6f5b3c25d6729d924204c0634dd6ead 100755 --- a/src/bp_implementations/al_bp_ion_conversions.c +++ b/src/bp_implementations/al_bp_ion_conversions.c @@ -46,14 +46,14 @@ char * al_ion_endpoint_id(al_bp_endpoint_id_t endpoint_id) char * eid_ion; int length_eid = strlen(endpoint_id.uri)+1; eid_ion = (char *)(malloc(sizeof(char)*length_eid)); - strncpy(eid_ion,endpoint_id.uri,length_eid); + memcpy(eid_ion,endpoint_id.uri,length_eid); return eid_ion; } al_bp_endpoint_id_t ion_al_endpoint_id(char * endpoint_id) { al_bp_endpoint_id_t eid_bp; int length = strlen(endpoint_id)+1; - strncpy(eid_bp.uri,endpoint_id,length); + memcpy(eid_bp.uri,endpoint_id,length); return eid_bp; }