Pular para o conteúdo principal

C String endswith

Essa função recebe duas strings e as compara. Caso sejam iguais ela retorna 1, caso contrário ela retorna 0.

== Cabeçalho (strext.h)

/* $NetBSD: strext.h, v1.0 2011/02/21 06:36 alacerda Exp $ */

#include

int endswith(char *str, char  *fil){
  int tamstr = strlen(str);
  int tamfil = strlen(fil);
  int retorno = 0;

  for (; tamfil > 0; tamfil--, tamstr--){
    if (str[tamstr-1] == fil[tamfil-1]){
      retorno = 1;
    } else {
      retorno = 0;
      return retorno;
    }
  }
  return retorno;
}



== Exemplo (código)
/* Estou incluindo o caminho completo para o cabeçalho stdio.h por que o blog não aceita
que eu coloque os simbolos de "maior que" e "menor que".
*/
#include "/usr/include/stdio.h"
#include "strext.h" //AQUI ESTOU CHAMANDO O CABEÇALHO

int main(int argc, char *argv[]){
char *nome = argv[1];
char *ext = "argv[2];

if(endswith(nome, ext) == 1){
printf("Sao iguais.\n");
} else {
printf("Sao diferentes.\n");
}
}

== Exemplo (execução)

alacerda# ./stringext Alan anaSao diferentes.alacerda# ./stringext Alan anSao iguais.

Comentários

Postagens mais visitadas deste blog

[VMWare ESXi 6] - Suporte à placa de rede Realtek 8139

Essa placa não é suportada nativamente pelo ESXi. Para usar uma dessas placas precisei seguir os assoa abaixo:

Envie para o datastore o seguinte arquivo: https://www.dropbox.com/s/840jcwj93yed1wr/rtl8139.vib?dl=0

Execute essa sequência de comandos via SSH:

esxcli software acceptance set --level=CommunitySupported
esxcli software vib install -v /vmfs/volumes/datastore1/isos/rtl8139.vib

Reinicie o sistema e a placa deverá ser reconhecida.

:wq!

CentOS 7 + OMD (Open Monitoring Distribution )

yum install wget -y
wget https://labs.consol.de/repo/stable/rhel7/x86_64/labs-consol-stable-1.3-1.rhel7.noarch.rpm
yum localinstall labs-consol-stable-1.3-1.rhel7.noarch.rpm -y
yum install omd -y
Após a instalação ser concluída, crie e inicie a nova instância do OMD:

omd create nome_do_siteomd start nome_do_site
Para visualizar e alter algumas configurações :

omd config nome_do_site
== OBS
O firewall do CentOS não permite conexões às porta 5000 por padrão (A porta 5000 é a default para o primeiro site OMD). Uma solução rápida (apenas em laboratório):

iptables -F
== Acesse o servidor:
http://ip_do_servidor:5000/nome_do_site
Usuário: omdadmin
Senha: omd

== Main informações
Mais informações em: http://omdistro.org/

[Python] - Executando duas versões no mesmo computador.

Recentemente iniciei um treinamento de segurança usando Python e uma das tarefas era descobrir como usar duas versões diferentes do Python no mesmo computador.

Basicamente, a ideia é criar dois ambientes virtuais de execução do Python e ter a capacidade de pular de um ambiente para o outro.

Então, claro que preciso ter duas versões diferentes do Python instaladas na máquina:

root@darkside:~# which python2.7
/usr/bin/python2.7
root@darkside:~# which python3.5
/usr/bin/python3.5

Para criar os ambientes virtuais distintos para cada uma dessas versões vamos precisar do virtualenv:

root@darkside:~# pip install virtualenv

Criando o ambiente virtual do Python 2.7:

root@darkside:~# virtualenv -p /usr/bin/python2.7 vpy2.7
Running virtualenv with interpreter /usr/bin/python2.7
New python executable in /root/vpy2.7/bin/python2.7
Also creating executable in /root/vpy2.7/bin/python
Installing setuptools, pip, wheel...done.

Criando o ambiente virtual do Python 3.5:

root@darkside:~# virtualenv -p /usr/bin/pyt…