diff -aur ./tvheadend-git/src/wrappers.c ./tvheadend-git.mod/src/wrappers.c --- ./tvheadend-git/src/wrappers.c 2018-04-27 23:23:40.349358154 +0200 +++ ./tvheadend-git.mod/src/wrappers.c 2018-05-17 21:41:00.519672288 +0200 @@ -197,8 +197,8 @@ pthread_attr_setstacksize(&_attr, 2*1024*1024); attr = &_attr; } - strncpy(ts->name, "tvh:", 4); - strncpy(ts->name+4, name, sizeof(ts->name)-4); + memcpy(ts->name, "tvh:", 4); + memcpy(ts->name+4, name, sizeof(ts->name)-4); ts->name[sizeof(ts->name)-1] = '\0'; ts->run = start_routine; ts->arg = arg; diff -aur ./tvheadend-git/src/filebundle.c ./tvheadend-git.mod/src/filebundle.c --- ./tvheadend-git/src/filebundle.c 2018-05-17 22:12:17.189677387 +0200 +++ ./tvheadend-git.mod/src/filebundle.c 2018-05-17 22:20:16.259678688 +0200 @@ -261,7 +261,7 @@ i = 0; while (fb) { (*list)[i] = calloc(1, sizeof(fb_dirent)); - strncpy((*list)[i]->name, fb->name, sizeof((*list)[i]->name)); + memcpy((*list)[i]->name, fb->name, sizeof((*list)[i]->name)); (*list)[i]->name[sizeof((*list)[i]->name)-1] = '\0'; fb = fb->next; i++; diff -aur ./tvheadend-git/src/lang_str.c ./tvheadend-git.mod/src/lang_str.c --- ./tvheadend-git/src/lang_str.c 2018-05-17 22:22:19.409679023 +0200 +++ ./tvheadend-git.mod/src/lang_str.c 2018-05-17 22:25:15.789679502 +0200 @@ -97,7 +97,7 @@ /* Check config/requested langs */ if ((langs = lang_code_split(lang)) != NULL) { for (i = 0; i < langs->codeslen; i++) { - strncpy(skel.lang, langs->codes[i]->code2b, sizeof(skel.lang)); + memcpy(skel.lang, langs->codes[i]->code2b, sizeof(skel.lang)); if ((e = RB_FIND(ls, &skel, link, _lang_cmp))) break; } @@ -130,7 +130,7 @@ /* Create */ if (!e) { e = malloc(sizeof(*e) + strlen(str) + 1); - strncpy(e->lang, lang, sizeof(e->lang)); + memcpy(e->lang, lang, sizeof(e->lang)); strcpy(e->str, str); RB_INSERT_SORTED(ls, e, link, _lang_cmp); save = 1; diff -aur ./tvheadend-git/src/rtsp.c ./tvheadend-git.mod/src/rtsp.c --- ./tvheadend-git/src/rtsp.c 2018-05-17 22:26:40.359679731 +0200 +++ ./tvheadend-git.mod/src/rtsp.c 2018-05-17 22:44:59.499682717 +0200 @@ -55,7 +55,7 @@ http_arg_init(&h); } strncpy(buf_body, body, sizeof(buf_body)); - strncat(buf_body, "\r\n", 2); + strcat(buf_body, "\r\n"); snprintf(buf2, sizeof(buf2), "%"PRIu64, (uint64_t)(size + 2)); http_arg_set(hdr, "Content-Length", buf2); } diff -aur ./tvheadend-git/src/transcoding/transcode/context.c ./tvheadend-git.mod/src/transcoding/transcode/context.c --- ./tvheadend-git/src/transcoding/transcode/context.c 2018-05-17 23:29:37.049689991 +0200 +++ ./tvheadend-git.mod/src/transcoding/transcode/context.c 2018-05-17 23:30:11.339690084 +0200 @@ -498,7 +498,7 @@ struct { const AVClass *class; } logctx = { &logclass }; - AVFilter *iavflt = NULL, *oavflt = NULL; + const AVFilter *iavflt = NULL, *oavflt = NULL; AVFilterInOut *iavfltio = NULL, *oavfltio = NULL; AVBufferSrcParameters *par = NULL; int i, ret = -1; diff -aur ./tvheadend-git/src/transcoding/codec/codec.c ./tvheadend-git.mod/src/transcoding/codec/codec.c --- ./tvheadend-git/src/transcoding/codec/codec.c 2018-05-17 23:29:37.049689991 +0200 +++ ./tvheadend-git.mod/src/transcoding/codec/codec.c 2018-05-17 23:37:01.129691197 +0200 @@ -102,7 +102,7 @@ str_snprintf(codec_title, sizeof(codec_title), self->long_name ? "%s: %s%s" : "%s%s%s", self->name, self->long_name ? self->long_name : "", - (self->capabilities & CODEC_CAP_EXPERIMENTAL) ? " (Experimental)" : "") + (self->capabilities & AV_CODEC_CAP_EXPERIMENTAL) ? " (Experimental)" : "") ) { return NULL; }