typedef struct { ... } *SilcDList;
This is the actual SilcDList object that is used by application. Application defines this object and adds contexts to this list with Dynamic List Interface functions.
typedef struct SilcDListStruct { SilcList list; } *SilcDList;