Jump to content

u0m3

Active Members
  • Posts

    543
  • Joined

  • Last visited

  • Days Won

    25

Posts posted by u0m3

  1. Daca te referi la ping-ul clasic, din cate stiu eu, foloseste protocolul ICMP (care este OSI Layer 3 aka Network Layer, desi e incapsulat in IPv4), deci nu are port (din cate stiu eu, doar protocoalele din OSI Layer 4 aka Transport Layer au port, sau cel putin cand e vorba de TCP/UDP).

    Daca te referi la TCP/UDP ping, atunci presupun ca e implementation specific.

     

    Just my 2cents.

  2. #include <stdio.h>
    
    int min(int vlen, int* v)
    {
    	int min = v[0];	// assume vlen > 0
    	
    	// loop over vector and if we find a
    	// smaller value than the current
    	// smallest value, that becomens
    	// the new minimum
    	for(int i = 1; i < vlen; ++i)
    		if(v[i] < min)
    			min = v[i];
    	
    	return min;
    }
    
    int max(int vlen, int* v)
    {
    	int max = v[0];	// assume vlen > 0
    	
    	// loop over vector and if we find a
    	// bigger value than the current
    	// biggest value, that becomens
    	// the new maximum
    	for(int i = 1; i < vlen; ++i)
    		if(v[i] > max)
    			max = v[i];
    	
    	return max;
    }
    
    int main(int argc, char* argv[])
    {
    	// Variables
    	int xlen;	// x length
    	int ylen;	// y length
    	int x[50];
    	int y[50];
    	int xmin;
    	int xmax;
    	int ymin;
    	int ymax;
    	
    	// Read xlen
    	printf("Introduceti dimensiunea masivului X (maxim 50): ");
    	scanf("%d", &xlen);
    	
    	// Read x
    	for(int i = 0; i < xlen; ++x)
    	{
    		printf("x[%d] = ", i);
    		scanf("%d", &x[i]);
    	}
    	
    	// Read ylen
    	printf("Introduceti dimensiunea masivului Y (maxim 50): ");
    	scanf("%d", &ylen);
    	
    	// Read y
    	for(int i = 0; i < ylen; ++x)
    	{
    		printf("y[%d] = ", i);
    		scanf("%d", &y[i]);
    	}
    	
    	// Find mins and maxs
    	xmin = min(xlen, x);
    	xmax = max(xlen, x);
    	ymin = min(ylen, y);
    	ymax = max(ylen, y);
    	
    	// Check for division by 0
    	if(ymax - xmin == 0)
    		printf("Eroare: impartire la 0!\n");
    	else
    		printf("z = (xmax - ymin) / (ymax - xmin) = %d", (xmax - ymin) / (ymax - xmin));
    	
    	return 0;
    }

     

    • Upvote 2
  3. Poti da mai multe detalii? Ce sistem de operare / versiune server RDP, ce versiune de client merge si ce versiune nu merge, ce configuratie are serverul RDP (ce setari, nu configuratia fizica hardware), ce client ai incercat pe kali, configuratia retelei...

    Sunt multe variabile ce pot afecta functionalitatea.

  4. @Byte-ul: Cred ca @MrGrj se referea la folosirea clasei template vector care contine ca si membru dimensiunea.

     

    4 hours ago, MrGrj said:

     

    1. Asta e C, nu C++.

    2. Functia nu ar trebui sa primeasca size ca argument - daca am un vector care contine n elemente unde n e un numar foarte mare, ce fac ? Ma apuc si numar elementele de nebun ca sa stiu cat sa aloc pentru argument? Nu mai bine aloci dinamic un vector de marime n, unde n este dat de la tastatura ? 

     

    Anyway, ar trebui ca asta sa-si faca o idee chiar daca pe chat a supt-o si a vrut mura-n gura :) 

     

     

    @MrGrj: Cred ca esti confuz; in exemplul acela al lui @3t3r4n parametrul size din functia minim nu are ca scop decat comunicarea dimensiunii vectorului pasat ca adresa in variabila vector (care este un pointer int). Nu se aloca nimic. Vectorul e alocat in main ca variabila a[10].

    Si ca sa determini minimul este necesar sa iterezi peste toate valorile vectorului, si pentru asta ai nevoie de dimensiunea vectorului altfel cum stii cand iesi din zona de memorie dedicata acestuia?

    Singura situatie in care nu este neaparata transmiterea dimensiunii vectorului este la string-urile null terminated, unde iterezi pana gasesti caracterul null. Dar in rest, 0 este o valoare valida.

    In cazul in care te gandeai sa determini marimea unui array cu tehnica

    int somesizefn(int *v)
    {
      return sizeof(v)/sizeof(*v);
    }
    
    int main(int argc, char* argv[])
    {
      int a[0xbf];
      int q = somesizefn(a);
      return 0;
    }

    nu cred ca ar fi mers.

    Cum am spus mai sus, mai era varianta container-ului vector, caz in care daca tot folosesti C++ functia ar fi putut aratat asa:

    // varianta cu index
    template <typename _T> _T minim(std::vector<_T>& v)
    {
      _T min = v[0];
      for(std::vector<_T>::size_type idx = 1; idx < v.size(); ++idx)
        if(v[idx] < min)	// aici te rogi ca _T sa aiba implementat operatorul "<"
          min = v[idx];
      return min;
    }
    
    // varianta cu iteratori
    template <typename _T> _T minim(std::vector<_T>& v)
    {
      std::vector<_T>::const_iterator it = v.cbegin();
      _T min = *it;
      for(it = v.cbegin() + 1; it != v.cend(); ++it)
        if(*it < min)
          min = *it;
      return min;
    }

    Sau folosesti direct

    *std::min_element(std::begin(a), std::end(a));

    Dar avand in vedere ca este o tema de liceu, zic ca era cam mult de procesat.

     

     

     

    Imi cer scuze fata de cei pe care i-am deranjat inutil mentionandu-i cu @; m-a cam luat valul.

  5. On 1/23/2017 at 8:17 PM, aelius said:

     

    FreeBSD ar trebui sa mearga fara probleme. Am testat pe sparc64 si arm (nu mai stiu insa pe ce placa arm, era industriala). 

    Stiu ca pfSense merge pe unele platforme ARM (dupa cum a zis si @gaddafi Netgear are un dispozitiv ARM cu pfSense) dar din cate stiu eu nu totate arhitecturile ARM sunt inter-compatibile. Daca apuc sa cumpar un ODROID-XU4, am sa testez daca merge pfSense.

    • Upvote 1
  6. 2 hours ago, aelius said:

    Firewall (UTM) + Access point home sau small business. Ar fi foarte util daca ar avea doua porturi ethernet. Avand in vedere ca e ARM, ai bate la fund orice device de genul. Cu ceva carcase branduite, e o idee buna si pentru un business. Toti au nevoie la office de un firewall cu control acces, reguli de filtering pentru ad servere, anti spam, etc. Au suficiente resurse pentru a face inclusiv VPN server pentru a permite lucrul de la distanta pe statiile de lucru sau alte echipamente de la office (ex: active directory, server de email securizat, etc)

     

    Daca are port USB3 poti pune adaptoare gigabit-usb. Cred ca merg macar 4 (presupunand ca e bus-ul non-shared). Problema e ca nu sunt multe kerneluri care merg pe ARM (aici ma refer la BSD in special pfSense).

  7. On 1/16/2017 at 7:25 PM, DanYeL17 said:

    Am cautat si am gasit ceva ..

    Acest AP , dar nu stiu daca e destul de bun pentru distanta mea ..Păreri?

    Sau daca cineva imi poate recomanda unul care sa fie 'compatibil' cu distanta mea , adica 300 de metrii ..

    Si inca ceva ,ap urile de 5 mhz  se pot conecta la wifi  uri  de 2.4 mhz sau trebuie sa aibă aceeasi frecventa ?

    Cred ca te referi la GHz nu MHz. Si nu, un dispozitiv WiFi ce comunica pe banda de 5GHz nu poate comunica cu un dispozitiv ce foloseste banda de 2.4 GHz. Sunt dispozitive dual-band care au 2 transceiver-e. Dar daca e single-band, nu.

     

    On 1/17/2017 at 1:10 PM, DanYeL17 said:

    Up 

    Un prieten a avut abonament la IDILIS , accesul la internet era datorat unui dispozitiv WiMax ( Acesta  mai exact( OX350 WiMax) )   anyway, dupa abonament a ramas cu acel dispozitiv .

    Acel dispozitiv nu are AP de la alt dispozitiv wi-fi , nu?(Wi Fi Cafenea ->OX350 WiMax -> Router wireless -> Alte dispozitive  , dar nu cred că merge )

    Il pot achiziționat de la el cu un pret destul de ok(foarte) si na , vreau sa stiu exact daca ar merge ideea ..

    Daca nu , o sa raman la ideea de a cumpara AP :)

    WiMax e cu totul alta mancare de peste. Ma indoiesc de posibilitatea de a conecta un dispozitiv WiMax la o retea WiFi.

    • Upvote 2
×
×
  • Create New...