[erlang-questions] Why doesn't ssh module start crypto module?

Matt Reynolds matt@REDACTED
Thu Jul 9 04:59:40 CEST 2009


Thanks all for the answers!

On Tue, Jul 7, 2009 at 6:39 AM, Robert Raschke<rtrlists@REDACTED> wrote:
> Also note that if you build an OTP release, then the boot script usually
> takes care of starting all your applications in the right order. If you're
> not using releases, then you need to do that yourself.
>
> Robby
>
> On Tue, Jul 7, 2009 at 2:05 PM, Niclas Eklund <nick@REDACTED> wrote:
>
>>
>> Hello!
>>
>> The 'applications' value shall list other applications that the application
>> depends on. If the required applicatios hans't been started an error message
>> is returned.
>>
>> Why doesn't SSH start crypto? For example might other applications also
>> depend on crypto and the required type (permanent | transient | temporary)
>> may differ. Another reason is that many applications export specific start
>> functions (Mnesia, SSL, Orber etc) which in some cases require configuration
>> parameters. Typically these functions do more stuff than just invoking
>> application:start/1/2. Hence, you should use ssh:start/1/2 instead.
>>
>> Also consider that if application A depends on that B is started. If B is
>> updated and require that application C i started prior to B. In that case A
>> must be patched so that it starts not only B but also C. I hope you see my
>> point why SSH shall not start Crypto ;-)
>>
>> The short version, you must start the other applications in your code.
>>
>> Best Regards,
>>
>> Niclas @ Erlang/OTP
>>
>>
>>
>> On Mon, 6 Jul 2009, Matt Reynolds wrote:
>>
>>  Am I misunderstanding the use of the "applications" atom in the
>>> Applications configuration
>>> (http://erlang.org/doc/design_principles/applications.html)?
>>>
>>> Erlang R13B01 (erts-5.7.2) [source] [smp:2:2] [rq:2] [async-threads:0]
>>> [kernel-poll:false]
>>>
>>> Eshell V5.7.2  (abort with ^G)
>>> 1> application:start(ssh).
>>> {error,{not_started,crypto}}
>>>
>>> Does the "applications" configuration simply specify what must be
>>> started first, without starting those modules?  So the Application
>>> specifying dependencies must start it itself?  If so, why doesn't SSH
>>> start crypto?
>>>
>>> ________________________________________________________________
>>> erlang-questions mailing list. See http://www.erlang.org/faq.html
>>> erlang-questions (at) erlang.org
>>>
>>>
>>
>>
>> ________________________________________________________________
>> erlang-questions mailing list. See http://www.erlang.org/faq.html
>> erlang-questions (at) erlang.org
>>
>>
>


More information about the erlang-questions mailing list