There is no record of this ever being used at all, anywhere, since the feature was added in 2effd274466. This gets rid of extra linker tricks just to support a feature that isn't used, simplifying portability to other platforms.
Showing the changes to avserver.c (1 of 2 files). Show all
Unified · Split
| @@ -58,9 +58,6 @@ · 57 unmodified lines | |||
| 58 | #include <time.h> | 58 | #include <time.h> |
| 59 | #include <sys/wait.h> | 59 | #include <sys/wait.h> |
| 60 | #include <signal.h> | 60 | #include <signal.h> |
| 61 | #if HAVE_DLFCN_H | ||
| 62 | #include <dlfcn.h> | ||
| 63 | #endif | ||
| 64 | 61 | ||
| 65 | #include "cmdutils.h" | 62 | #include "cmdutils.h" |
| 66 | 63 | ||
| @@ -3914,32 +3911,6 @@ static enum AVCodecID opt_video_codec(const char *arg) · 3847 unmodified lines | |||
| 3914 | return p->id; | 3911 | return p->id; |
| 3915 | } | 3912 | } |
| 3916 | 3913 | ||
| 3917 | /* simplistic plugin support */ | ||
| 3918 | |||
| 3919 | #if HAVE_DLOPEN | ||
| 3920 | static void load_module(const char *filename) | ||
| 3921 | { | ||
| 3922 | void *dll; | ||
| 3923 | void (*init_func)(void); | ||
| 3924 | dll = dlopen(filename, RTLD_NOW); | ||
| 3925 | if (!dll) { | ||
| 3926 | fprintf(stderr, "Could not load module '%s' - %s\n", | ||
| 3927 | filename, dlerror()); | ||
| 3928 | return; | ||
| 3929 | } | ||
| 3930 | |||
| 3931 | init_func = dlsym(dll, "avserver_module_init"); | ||
| 3932 | if (!init_func) { | ||
| 3933 | fprintf(stderr, | ||
| 3934 | "%s: init function 'avserver_module_init()' not found\n", | ||
| 3935 | filename); | ||
| 3936 | dlclose(dll); | ||
| 3937 | } | ||
| 3938 | |||
| 3939 | init_func(); | ||
| 3940 | } | ||
| 3941 | #endif | ||
| 3942 | |||
| 3943 | static int avserver_opt_default(const char *opt, const char *arg, | 3914 | static int avserver_opt_default(const char *opt, const char *arg, |
| 3944 | AVCodecContext *avctx, int type) | 3915 | AVCodecContext *avctx, int type) |
| 3945 | { | 3916 | { |
| @@ -4596,12 +4567,7 @@ static int parse_ffconfig(const char *filename) · 650 unmodified lines | |||
| 4596 | redirect = NULL; | 4567 | redirect = NULL; |
| 4597 | } | 4568 | } |
| 4598 | } else if (!av_strcasecmp(cmd, "LoadModule")) { | 4569 | } else if (!av_strcasecmp(cmd, "LoadModule")) { |
| 4599 | get_arg(arg, sizeof(arg), &p); | 4570 | ERROR("Loadable modules no longer supported\n"); |
| 4600 | #if HAVE_DLOPEN | ||
| 4601 | load_module(arg); | ||
| 4602 | #else | ||
| 4603 | ERROR("Module support not compiled into this version: '%s'\n", arg); | ||
| 4604 | #endif | ||
| 4605 | } else { | 4571 | } else { |
| 4606 | ERROR("Incorrect keyword: '%s'\n", cmd); | 4572 | ERROR("Incorrect keyword: '%s'\n", cmd); |
| 4607 | } | 4573 | } |