type=page
status=published
title=delete-ssl
next=delete-system-property.html
prev=delete-resource-ref.html
~~~~~~
delete-ssl
==========

[[delete-ssl-1]][[GSRFM00109]][[delete-ssl]]

delete-ssl
----------

deletes the SSL element in the selected HTTP listener, IIOP listener, or
IIOP service

[[sthref975]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] delete-ssl [--help]
[--target target]
--type listener_or_service_type
listener_id
----

[[sthref976]]

Description

The `delete-ssl` subcommand deletes the SSL element in the selected HTTP
listener, IIOP listener, or IIOP service.

The listener_id is not required if the `--type` is `iiop-service`.

This subcommand is supported in remote mode only.

[[sthref977]]

Options

If an option has a short option name, then the short option precedes the
long option name. Short options have one dash whereas long options have
two dashes.

asadmin-options::
  Options for the `asadmin` utility. For information about these
  options, see the link:asadmin.html#asadmin-1m[`asadmin`(1M)] help page.
`--help`::
`-?`::
  Displays the help text for the subcommand.
`--target`::
  Specifies the target on which you are configuring the ssl element. The
  following values are valid: +
  `server`;;
    Specifies the server in which the iiop-service or HTTP/IIOP listener
    is to be unconfigured for SSL.
  config;;
    Specifies the configuration that contains the HTTP/IIOP listener or
    iiop-service for which SSL is to be unconfigured.
  cluster;;
    Specifies the cluster in which the HTTP/IIOP listener or
    iiop-service is to be unconfigured for SSL. All the server instances
    in the cluster will get SSL unconfigured for the respective listener
    or iiop-service.
  instance;;
    Specifies the instance in which the HTTP/IIOP listener or
    iiop-service is to be unconfigured for SSL.
`--type`::
  The type of service or listener for which the SSL is deleted. The type
  must be one of the following types: +
  * `http-listener`
  * `iiop-listener`
  * `iiop-service`

[[sthref978]]

Operands

listener_id::
  The ID of the listener from which the SSL element is to be deleted. +
  The listener_id operand is not required if the `--type` is
  `iiop-service`.

[[sthref979]]

Examples

[[GSRFM579]][[sthref980]]

Example 1   Deleting an SSL element from an HTTP listener

The following example shows how to delete an SSL element from an HTTP
listener named `http-listener-1`.

[source,oac_no_warn]
----
asadmin> delete-ssl
--type http-listener http-listener-1
Command delete-ssl executed successfully.
----

[[sthref981]]

Exit Status

0::
  command executed successfully
1::
  error in executing the command

[[sthref982]]

See Also

link:asadmin.html#asadmin-1m[`asadmin`(1M)]

link:create-ssl.html#create-ssl-1[`create-ssl`(1)]


