[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Introduce symbol versioning
[Thread Prev] | [Thread Next]
- Subject: Re: [PATCH] Introduce symbol versioning
- From: Jakub Jelen <jjelen@xxxxxxxxxx>
- Reply-to: libssh@xxxxxxxxxx
- Date: Mon, 12 Mar 2018 11:46:53 +0100
- To: libssh@xxxxxxxxxx
On Fri, 2018-03-09 at 07:37 -0500, Anderson Sasaki wrote: > [...] > > From 3e38ba07df7667300714771dfbe72bbd3077f582 Mon Sep 17 00:00:00 > 2001 > From: Anderson Toshiyuki Sasaki <ansasaki@xxxxxxxxxx> > Date: Thu, 8 Mar 2018 13:15:34 +0100 > Subject: [PATCH] Introduce symbol versioning > > This adds a linker map, which adds version information for exported > symbols, and the option to compile with symbol versioning. The symbol > versioning is enabled by default, but disabled in non UNIX like > platforms. It can be disabled by passing "- > DWITH_SYMBOL_VERSIONING=OFF" > option to cmake or "-withoutsymbolversioning" to "obj/build_make.sh". There should be two dashes, isn't it? "--withoutsymbolversioning" > [...] > + > +LIBSSH_4_5_0 Why the version 4_5_0 ? This will be the first symbol release? Or is this some convention? > +{ > + global: > + buffer_free; > + buffer_get; > + buffer_get_len; > + buffer_new; > + channel_accept_x11; > + channel_change_pty_size; > + channel_close; > + channel_forward_accept; > + channel_forward_cancel; > + channel_forward_listen; > + channel_free; > + channel_get_exit_status; > + channel_get_session; > + channel_is_closed; > + channel_is_eof; > + channel_is_open; > + channel_new; > + channel_open_forward; > + channel_open_session; > + channel_poll; > + channel_read; > + channel_read_buffer; > + channel_read_nonblocking; > + channel_request_env; > + channel_request_exec; > + channel_request_pty; > + channel_request_pty_size; > + channel_request_send_signal; > + channel_request_sftp; > + channel_request_shell; > + channel_request_subsystem; > + channel_request_x11; > + channel_select; > + channel_send_eof; > + channel_set_blocking; > + channel_write; > + channel_write_stderr; > + privatekey_free; > + privatekey_from_file; > + publickey_free; > + publickey_from_file; > + publickey_from_privatekey; > + publickey_to_string; > [...] > + _ssh_log; > [...] > + string_burn; > + string_copy; > + string_data; > + string_fill; > + string_free; > + string_from_char; > + string_len; > + string_new; > + string_to_char; > + local: > + *; > +}; Should the buffer_*, channel_*, string_*, publicky_*, privatekey_* functions and obviously-internal _ssh_log() be covered in the API? I don't think so. I would cover only the ssh_* and sftp_*, which is to my understanding intended API. I don't have a lot experience with it so these things might just need some clarification why they are done this way. Regards, -- Jakub Jelen Software Engineer Security Technologies Red Hat, Inc.
Re: [PATCH] Introduce symbol versioning | Aris Adamantiadis <aris@xxxxxxxxxxxx> |
[PATCH] Introduce symbol versioning | Anderson Sasaki <ansasaki@xxxxxxxxxx> |