[sldev] Re: Plugin architecture

Ben Byer sldev at bushing.mm.st
Thu Feb 22 01:23:21 PST 2007

On Feb 21, 2007, at 11:40 PM, Soft Noel wrote:

> On Wed, February 21, 2007 9:32 pm, John Hurliman wrote:
>> Ben Byer wrote:
>>>> [...] and LL-triggered plugin invalidation possible.
>>> Whoa.  Everyone, raise your hand if you think this is a good idea.
>>> -b
>> That's the most plausible idea since DRM!
> Scenario: Non-malicious plugin Foo v0.9 has a design defect causing a
> hundred users to hammer Userserver with large packets and kill IMs for
> everyone. LL says "All Foo v0.9, please unload/refrain from loading."

Scenario:  I find a bug in your remote-kill-switch and use it to turn  
off your plugins, randomly, as a fun joke.  Ha ha!

(Can you name any software, at all, that has similar functionality?)

Alternate solution to above scenario:
LL notices excessive load on server and starts scrutinizing server  
stats.  Noticing a increase in network traffic, they somehow manage  
to divine that it's being caused by "large packets".   They run a  
packet sniffer, see that these large packets are IMs, and probably  
deduce that they are being automatically sent.  Somehow they figure  
out that it is a plugin, and which plugin it is, and which users are  
causing problems.  They then

A. send out the "All Foo v0.9 die die die" message, or
B. temp-ban those users with a "reason message" of "You have a plugin  
that is malfunctioning and disrupting our service; please uninstall  
it."  Hell, you could just point them at a "special" TOS.  Then, they  
could go find the coder that isn't bounds-checking packets, slap him/ 
her on the wrists, and we could all be on our merry way.

I'm noticing a trend here.  Plugin systems are difficult to design in  
new products; they're even more difficult to integrate into large,  
complicated, multiplatform code bases with a wide range of users with  
a wide range of needs.  We have an abundance of people who want to  
help influence the plugin system, and a dearth of people who are in a  
position to actually write code to make it happen.  Instead, it seems  
like people are dredging up unlikely hypotheticals just to have  
something to talk about :(

More information about the SLDev mailing list