Skip to content

Commit

Permalink
[API] Deprecated srt_rejectreason_msg[]. (#2312)
Browse files Browse the repository at this point in the history
  • Loading branch information
maxsharabayko authored Apr 29, 2022
1 parent 9b3e3c1 commit 1c6e1ce
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 5 deletions.
4 changes: 3 additions & 1 deletion srtcore/srt.h
Original file line number Diff line number Diff line change
Expand Up @@ -984,7 +984,9 @@ SRT_API int srt_getsndbuffer(SRTSOCKET sock, size_t* blocks, size_t* bytes);

SRT_API int srt_getrejectreason(SRTSOCKET sock);
SRT_API int srt_setrejectreason(SRTSOCKET sock, int value);
SRT_API extern const char* const srt_rejectreason_msg [];
// The srt_rejectreason_msg[] array is deprecated (as unsafe).
// Planned removal: v1.6.0.
SRT_API SRT_ATR_DEPRECATED extern const char* const srt_rejectreason_msg [];
SRT_API const char* srt_rejectreason_str(int id);

SRT_API uint32_t srt_getversion(void);
Expand Down
29 changes: 25 additions & 4 deletions srtcore/srt_c_api.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -416,7 +416,7 @@ int srt_clock_type()
return SRT_SYNC_CLOCK;
}

extern const char* const srt_rejectreason_msg [] = {
const char* const srt_rejection_reason_msg [] = {
"Unknown or erroneous",
"Error in system calls",
"Peer rejected connection",
Expand All @@ -436,17 +436,38 @@ extern const char* const srt_rejectreason_msg [] = {
"Connection timeout"
};

// Deprecated, available in SRT API.
extern const char* const srt_rejectreason_msg[] = {
srt_rejection_reason_msg[0],
srt_rejection_reason_msg[1],
srt_rejection_reason_msg[2],
srt_rejection_reason_msg[3],
srt_rejection_reason_msg[4],
srt_rejection_reason_msg[5],
srt_rejection_reason_msg[6],
srt_rejection_reason_msg[7],
srt_rejection_reason_msg[8],
srt_rejection_reason_msg[9],
srt_rejection_reason_msg[10],
srt_rejection_reason_msg[11],
srt_rejection_reason_msg[12],
srt_rejection_reason_msg[13],
srt_rejection_reason_msg[14],
srt_rejection_reason_msg[15],
srt_rejection_reason_msg[16]
};

const char* srt_rejectreason_str(int id)
{
if (id >= SRT_REJC_PREDEFINED)
{
return "Application-defined rejection reason";
}

static const size_t ra_size = Size(srt_rejectreason_msg);
static const size_t ra_size = Size(srt_rejection_reason_msg);
if (size_t(id) >= ra_size)
return srt_rejectreason_msg[0];
return srt_rejectreason_msg[id];
return srt_rejection_reason_msg[0];
return srt_rejection_reason_msg[id];
}

}

0 comments on commit 1c6e1ce

Please sign in to comment.