On Fri, 14 Jul 2000, Sharon Stanton wrote: > Compiling... > diskio.c > Linking... > clan.obj : error LNK2001: unresolved external symbol _popen > Debug/circle.exe : fatal error LNK1120: 1 unresolved externals > Error executing link.exe. Your problem is that somewhere clan.obj (probably clan.c in source form) is a call to popen()) Now popen() forks and spawns an external program to either talk to or listen to it with a pipe, in *ix; your problem here is that you are compiling in windows which doesn't have this functionality [at least not implemented through a function named 'popen']. You need to disable the option/whatever in clan.c that calls popen, this might take some doing depending on how it's being used -- there really isn't any good reason that a mud should ever be forking or spawning an external program while in normal operation anyways, especially at the request of the user [which is the only reason I can possibly imagine it using popen rather than system()]; -- after all, a mud's a server, not a login shell! Calling popen() is particularly unsafe, especially if the arguments to the command being spawned can be controlled in any way by a player or imm for that matter; in either case, if a player can cause a popen() to happen on demand, they might be able to bring the system to its needs by hammering with requests or somethin'. ..blah..blah...<insert other admonishments about using popen in server code here directed at whoever did it> ...blah...blah... -Mysid +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 04/10/01 PDT