All pastes #948916 Raw Edit

Something

public c v1 · immutable
·published 2008-03-19 14:45 UTC
rendered paste body
/*	FairMount doesn't include any decryption functions by itself.	It will use a decryption library installed by the user, if available.*///----------------------------------------------------------------------------------dvdcss_t (*dvdcss_open)(char *) = 0;int (*dvdcss_close)(dvdcss_t) = 0;int (*dvdcss_seek)(dvdcss_t, int, int) = 0;int (*dvdcss_read)(dvdcss_t, void *, int, int) = 0;//----------------------------------------------------------------------------------static int LoadLib(const char *path){	void *dvdcss_library = dlopen(path, RTLD_NOW);	if (!dvdcss_library) return -1;	    dvdcss_open = (dvdcss_t (*)(char*))					dlsym(dvdcss_library, "dvdcss_open");    dvdcss_close = (int (*)(dvdcss_t))					dlsym(dvdcss_library, "dvdcss_close");    dvdcss_seek = (int (*)(dvdcss_t, int, int))			dlsym(dvdcss_library, "dvdcss_seek");    dvdcss_read = (int (*)(dvdcss_t, void*, int, int))	dlsym(dvdcss_library, "dvdcss_read");	if(!dvdcss_open || !dvdcss_close || !dvdcss_seek || !dvdcss_read)	{		dlclose(dvdcss_library);		return -1;	}		return 0;	}